ArcGIS JS 之通过代理配置ArcGIS Server服务 token

ArcGIS JS 代理 

1.ArcGIS Server Manager中配置访问服务的用户名、密码、角色等,并配置地图服务的具体角色名称

2.在ArcGIS JS中配置使用代理,下述代码将esri的请求中,以http://xxx.com开头的,统一转发到代理程序 /proxy.ashx中

require(["esri/core/urlUtils"], function(urlUtils) {
  urlUtils.addProxyRule({
    urlPrefix: "http://xxx.com",
    proxyUrl: "/proxy.ashx"
  });
});

3.将从github上下载的代理文件,放到网站的根目录中。

配置proxy.config,在<serverUrls></serverUrl>中增加节点

        <serverUrl url="http://xxx.com"
               hostRedirect="http://localhost:6080"
               matchAll="true"
               username="OneMapUser"
               password="123456"
               dynamicToken="true"
               host="http://localhost:6080"/>

上述节点含义为,将以http://xxx.com开头的请求,统一转发到http://localhost:6080的地址中,并使用配置的username password生成token去请求服务资源,并将ArcGIS Server的响应返回给客户端。

由于上述内容是在web服务器中执行的,所以,具体ArcGIS Server服务的网址、以及用于生成token的用户名、密码等,对用户端浏览器不可见,该方式可以实现隐藏ArcGIS Server服务器。

原文地址:https://www.cnblogs.com/DayDreamEveryWhere/p/10950477.html