Arcgis的proxy使用

直接把https://github.com/Esri/resource-proxy下载的Java拷贝到Tomcat的webapps目录,修改Java目录为httpproxy。启动后测试

‘’

默认proxy.config只会代理services.arcgisonline.com,所以访问下面地址会出错

配置proxy.jsp增加需要代理的地址,下面配置的proxy_log.log在tomcat的bin目录。

再次访问成功

在网页中如何使用,虽然这里alwaysUseProxy用了false,但是html中使用request请求的时候会通过代理去调用。

在WMTSLayer代码有用request去请求传入url地址的GetCapacities.

因为html和请求的地址跨域,所以可以用代理来处理跨域。

http://t0.tianditu.gov.cn配置到proxy.config。测试网页也放在TOMCAT下,避免跨域。只要网页配置如下代码,则使用esrirequest的时候就会通过proxy去请求。

方式一:
esri.config.defaults.io.proxyUrl="http://localhost:8080/httpproxy/proxy.jsp/Java/proxy.jsp"; 
esri.config.defaults.io.alwaysUseProxy= false; 
方式二:和一一样,写法amd方式alwaysUseProxy默认为false,应该就是不符合代理规则的情况就不使用代理
require(["esri/config"], function(esriConfig) 
{ 
esriConfig.defaults.io.proxyUrl = "http://localhost:8080/httpproxy/proxy.jsp" 
esriConfig.defaults.io.alwaysUseProxy = false; 
});
方式三:符合urlPrefix的才走代理
urlUtils.addProxyRule({
urlPrefix:"t0.tianditu.gov.cn",
proxyUrl:"http://localhost:8080/httpproxy/proxy.jsp"
});

在network中可以看到如下请求。

http://localhost:8080/httpproxy/proxy.jsp?http://t0.tianditu.gov.cn/vec_c/wmts?request=GetCapabilities&service=WMTS&version=1.0.0&tk=41992f255f5c4efffceb41e0f06d3dc2

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值