这里API |途经点的多值查询参数

问题描述 投票:0回答:3

我使用的是最新版本的这里的javascript sdk 3.1.32.0

当我使用

H.service.Url.MultiValueQueryParameter
作为我的途经点时,例如

{
...,
via: new H.service.Url.MultiValueQueryParameter(['50.1234,8.7654', '51.2234,9.1123']);
}

我在请求的 URL 参数中看到:

&via=%5Bobject%20Object%5D 

有人知道为什么会发生这种情况吗?

提前致谢!

here-api
3个回答
0
投票

当您使用“via”参数时,您定义了一个via 航点列表。 via 航点不是 JavaScript 识别的原生数据类型,因此,您将在 URL 参数中看到引用特定数据结构的单词对象,在本例中,via 航点主要由纬度、经度组成。 问候。


0
投票

花了一段时间才找出格式错误的网址参数的实际问题。我在组件的安装上动态加载此处的地图服务脚本。意外地,这种情况在某些情况下发生了两次。在这两种情况下,

H
都是全球可用的,一切都按预期进行。但是当脚本加载两次时
H.service.Url.MultiValueQueryParameter
没有返回正确的参数。它基本上对它们进行了两次编码,或者试图编码。

另一个问题是 https://www.npmjs.com/package/@types/heremaps 已过时并且不涵盖

MultiValueQueryParameter
。所以我必须删除这些类型并使用我自己的类型。否则我可能会更早意识到这个问题。


0
投票

谢谢你。这非常有帮助。我也尝试过从 V7 转换到 V8。我对加载两次 MultiValueQueryParameter 没有任何问题,但我确实看到纬度/经度值在对 v8 路由服务的 URL 调用中被多次编码。

以下是如何使用新的 via 选项调用多个“路径点”的示例。 https://www.here.com/docs/bundle/maps-api-for-javascript-api-reference/page/H.service.RoutingService8.html

'via': new H.service.Url.MultiValueQueryParameter(['48.8664,2.3234', '48.8703,2.3499']),

© www.soinside.com 2019 - 2024. All rights reserved.