【仅供内部供应商使用,不提供对外解答和培训】

Page tree

【仅供内部供应商使用,不提供对外解答和培训】

Skip to end of metadata
Go to start of metadata

接口作用

修改请求的地址,主要用于多个地址映射到同一个报表服务器上的场景。

接口内容

ServletURLTransformer
public interface ServletURLTransformer extends Mutable {

    String XML_TAG = "ServletURLTransformer";

    int CURRENT_LEVEL = 1;

    /**
     * 用于内外网的转换
     *
     * @param req     HTTP请求
     * @param builder 原始的URL
     * @return 转换后的URL
     */
    String transform(HttpServletRequest req, StringBuilder builder);

    /**
     * 给资源文件加的前缀
     *
     * @param servletURL 服务器地址
     * @param checkOut   资源类型
     * @return 资源文件前缀
     */
    String prefixForResource(String servletURL, CheckOut checkOut);

    /**
     * 给资源文件加的前缀
     *
     * @param servletURL 服务器地址
     * @param type       请求类型
     * @return 资源文件前缀
     */
    String prefixForImage(String servletURL, String type);

    /**
     * 给资源文件加的前缀
     *
     * @param servletURL 服务器地址
     * @param source     源对象
     * @param type       请求类型
     * @return 资源文件前缀
     */
    String prefixForWrite(String servletURL, Object source, String type);

}
LikeURLTransform
public class LikeURLTransform extends AbstractServletURLTransformer {

    @Override
    public int currentAPILevel() {
        return CURRENT_LEVEL;
    }

    @Override
    public String transform(HttpServletRequest req, StringBuilder builder) {
        return builder.toString();
    }
}

 

示例实现

源码

示例插件的源码请看这里:http://cloud.finedevelop.com:2015/projects/FS/repos/plugins/browse/plugin-url-transform?at=dev

  • No labels