目录
1.什么是跨域?
当请求的URL、域名、端口三者之间任意一个与当前的页URL不同,即造成了跨域。
2.如何解决ArcGIS API 跨域
(1)CORS策略
CORS(Cross-Origin Resource Sharing)简称跨域资源共享,它是 W3C 标准,属于跨源 AJAX 请求的根本解决方法。
注:一般Web浏览器都支持CORS,不需要特别配置。
- 打开windows IIS 管理器,进行以下配置
- 添加以下HTTP标头和值
-
引用类:["esri/config", esriConfig],在js文件头部写入下列语句
esriConfig.portalUrl = "https://myHostName.esri.com/arcgis";
esriConfig.request.corsEnabledServers.push("localhost:55708");(将不受支持)
(2)Proxy代理策略
- DotNet
- JAVA
- PHP
根据自己的配置选则相应的代理配置,下面以DotNet为例。
- 将下载的DotNet代理文件复制到wwwroot文件夹下
- 选择DotNet,右键转换为应用程序
具体配置请查阅
GitHub:https://github.com/Esri/resource-proxy/blob/master/README.md#proxy-configuration-settings
ArcGIS:https://developers.arcgis.com/javascript/latest/api-reference/esri-config.html#