javascript - ESRI JS API 4.9+ 和 Koop : services fail to load due to reduntant url params

标签 javascript arcgis esri-javascript-api

受影响的 JS API:4.9、4.10 JS API 正常:< 4.8

将我们的应用程序升级到 4.9 后,不会加载 Koop 服务器提供的功能层。我已追踪到正在查询功能计数的请求。

让我们考虑 koop 网站上的示例 Koop 服务

let koopServiceUrl = 'http://koop.dc.esri.com/github/smartchicago/chicago-atlas/db::import::zipcodes/FeatureServer/0'

现在 Chrome 开发者窗口中的日志将显示 2 个请求。 - 一个用于图层定义,工作正常 (200) - 1 表示特征计数,返回 404(见下文)

enter image description here

请注意,失败的请求网址中存在重复的图层索引值 。如果我从 koopServiceUrl 中的定义 url 中删除 /0,则该层加载正常。 在 4.8 版本中,上述服务正常工作,并且特征计数请求的格式正确,url 参数中仅包含单层索引值。

最佳答案

看起来 JS API > 4.8 需要在功能层 URL 中包含 rest/services 。 Koop 的最新版本包含一组附加路由,其中​​包含此附加 URL 片段。例如:

例如路线:

/file-geojson/:id/FeatureServer/:layer/:method

rest/services 具有功能等效的版本:

/file-geojson/rest/services/:id/FeatureServer/:layer/:method

如果您使用第二条路线,JS API 将按预期工作。

关于javascript - ESRI JS API 4.9+ 和 Koop : services fail to load due to reduntant url params,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54101056/

相关文章:

google-maps - 创建自定义 Google(或 OpenLayers?) map

typescript - @types/arcgis-js-api 在 angular 5 应用程序中

javascript - 如何调用 "define"内的 JavaScript 函数 - 匿名方法

javascript - 直接在 JSX 中设置样式,当值改变时改变

python - 三角函数寻找景观能见度

javascript - Axios 拦截器 token header 存在于配置中但不存在于请求 header 中

javascript - 更改 dojo dijit 的文本

javascript - 从 data.json 中提取随机数据并对其进行洗牌

javascript数组由两个键混合