JavaScript API中如何设置只让部分服务通过代理访问
如何在应用中设置某些特定的服务访问是通过代理访问,而其他服务则不通过代理直接访问。
发起人
相关问题
- 在Visual studio 2015 中使用 Arcgis API for JavaScript v3.16 如何实现代码智能提示?
- 有栅格数据a(大数据),小数据b,怎么从a中扣掉b,得到a数据剩下的部分?栅格能裁剪取反吗?
- sketchup模型导入cityengine中部分纹理丢失,怎么解决?
- 在windows server2008 R2 64位中安装了portal 10.5 设置好托管arcgis server站点,并用data store为托管数据库,发布数据出错
- ENVI中Image to Map中X/Y Pixel Size的参数如何设置?
- ArcEngine10.1 如何发布地图服务
- 地图服务发布成功,但无法启动服务
- ArcGIS Server服务状态正在停止
- arcgis api for javascript 4.0版本中找不到draw工具,如何实现拉框查询、几何查询?
- 使用ArcGIS Desktop10.2版本,如何设置图例横着放且label在正下方?
- arcgis datastore安装后无法访问配置页面
问题状态
- 最新活动: 2016-02-26 03:40
- 浏览: 3733
- 关注: 1 人
1 个回复
桂朝
赞同来自:
分析:当访问请求不存在跨域问题或者请求的服务器支持CORS特性(ArcGIS Server10.1以上版本),则请求可以直接得到响应,不需要通过代理文件;或者即便通过esriConfig.defaults.io.proxyUrl = /proxy/设置了代理文件,请求也不会走代理来访问。
要强制某些服务地址始终通过代理文件来访问,则需要完成以下配置:
1、为应用设置对应web server版本的proxy代理文件,在proxy.config中设置需要走代理的服务URL,代理配置:
【代码】
<serverUrl
url=http://route.arcgis.com
matchAll=true
clientId=*****
clientSecret=******
rateLimit=120
rateLimitPeriod=60/>
[/code]
2、在应用中,使用urlUtils.addProxyRule方法,
【代码】
require([
esri/urlUtils,
...], function(urlUtils,
...
){
urlUtils.addProxyRule({
urlPrefix: route.arcgis.com,
proxyUrl: /proxy/
});
[/code]
示例:https://developers.arcgis.com/ ... .html
要回复问题请先登录或注册