目录

1.什么是跨域?

2.如何解决ArcGIS API 跨域

(1)CORS策略

(2)Proxy代理策略


1.什么是跨域?

当请求的URL、域名、端口三者之间任意一个与当前的页URL不同,即造成了跨域。

2.如何解决ArcGIS API 跨域

(1)CORS策略

CORS(Cross-Origin Resource Sharing)简称跨域资源共享,它是 W3C 标准,属于跨源 AJAX 请求的根本解决方法。

注:一般Web浏览器都支持CORS,不需要特别配置。

  1. 打开windows IIS 管理器,进行以下配置
  2. 添加以下HTTP标头和值ArcGIS API for js之接口跨域问题

     

  3. 引用类:["esri/config", esriConfig],在js文件头部写入下列语句

esriConfig.portalUrl = "https://myHostName.esri.com/arcgis";

esriConfig.request.corsEnabledServers.push("localhost:55708");(将不受支持)

(2)Proxy代理策略

  • DotNet
  • JAVA
  • PHP

根据自己的配置选则相应的代理配置,下面以DotNet为例。

  1. 将下载的DotNet代理文件复制到wwwroot文件夹下ArcGIS API for js之接口跨域问题
  2. 选择DotNet,右键转换为应用程序

ArcGIS API for js之接口跨域问题

 

具体配置请查阅

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#

相关文章: