这里 Maps 提供了 Maps Feedback API,用于提交有关其地图上缺少的地方的信息。我创建了一个项目并成功生成了用于 Places API 的 API 密钥。接下来,我尝试将它与反馈 API 一起使用,但它失败了。奇怪的是,没有任何凭据我得到了 200 OK。
我的要求:
curl --location --request POST 'https://maphub.api.here.com/feedback/' \
--header 'Content-Type: application/vnd.here.layerObjectList+json; charset=UTF-8' \
--header 'Accept-Charset: charset=UTF-8' \
--header 'Auth-Service-Id: here_app' \
--header 'Group-Id: FGx1AWaAzKOo0imNkLmf' \
--data-raw MY_DATA
Run Code Online (Sandbox Code Playgroud)
响应:200 OK包含id反馈的正文(对于检查状态很重要)。
maphub.cit.api.here.com代替maphub.api.here.com回复: 401 Unauthorized: Authentication failed. Reason: Missing authentication credentials
curl --location --request POST 'https://maphub.api.here.com/feedback/' \
--header 'Content-Type: application/vnd.here.layerObjectList+json; charset=UTF-8' \
--header …Run Code Online (Sandbox Code Playgroud) 这是我的 cURL 请求
curl https://geocode.search.hereapi.com/v1/geocode?q=5%20Rue%20Daunou%2C%2075000%20Paris%2C%20France -H "Authorization: Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXX"
Run Code Online (Sandbox Code Playgroud)
这是回应
{"error":"Unauthorized","error_description":"Token Validation Failure - unrecognized kid null"}
Run Code Online (Sandbox Code Playgroud)
我不确定发生了什么。我尝试了不同的访问密钥。我生成了新的。但不断收到同样的错误。
我对 Here Maps Routing API v8 非常陌生。
我已经尝试过此处提供的示例: https: //developer.here.com/documentation/maps/3.1.15.1/dev_guide/topics/routing.html
我使用的路由参数如下所示:
var routingParameters = {
'routingMode': 'fast',
'transportMode': 'car',
'origin': '50.1120,8.6834',
'destination': '52.5309,13.3846',
'return': 'polyline'
};
Run Code Online (Sandbox Code Playgroud)
现在我想在routingParameters中添加多个航路点,并且我尝试了以下格式:
'via' : ['50.1234,8.7654', '51.2234,9.1123']
但是当我在路由参数中使用上述行时,请求失败。
您能否建议具有多个航点的请求的正确格式?
我正在努力在 HERE 插件中进行身份验证。我使用的是带有 Qt 5.9.1 Mingw 32bit 的 Windows 10,我的应用程序几乎都是用 C++ 编写的。我使用 QML 的唯一部分是关于地图。我想使用 HERE 插件,但我是 QtLocation 和插件的新手,我真的不明白我需要做什么才能在 HERE 中进行身份验证。我试图按照 HERE 网站上的指南进行操作,但我真的无法理解。
我从 qt 知道我必须用来验证 HERE 的代码如下:
Plugin {
name: "here"
PluginParameter { name: "here.app_id"; value: "myapp" }
PluginParameter { name: "here.token"; value: "abcdefg12345" }
}
Run Code Online (Sandbox Code Playgroud)
所以我需要here.app_id和here.token。
我在 HERE 站点上创建了一个帐户,并使用 REST 创建了一个项目。所以现在我有了我的APP ID参数,但我真的不明白如何将TOKEN值放入第二行。首先,对于我的具体情况,我需要创建一个 api 密钥还是一个 OAuth 2.0?
我尝试使用 Postman遵循此链接中所写的内容,最后我得到了一个非常长的tokoen,我将其复制并放入“here.token”参数中,但是当我运行该应用程序时,它给了我Invalid here.token和它不显示地图。
有人可以给我任何有关如何正确获取令牌值的提示吗?或者有人可以指点我一些链接吗?例如,是否有不同的方式使用 api 密钥而不是令牌登录?
- …
带有 SVG 图标的此处地图标记仅不会显示在 Safari 上的地图中(适用于所有其他浏览器)。我还使用了地图之外的图标,它们在那里显示得很好。但实际的地图是画布,所以也许这与它有关?
尝试向图标的 SVG 标记添加高度、宽度和版本属性。
SVG 图标标记:
<svg xmlns="http://www.w3.org/2000/svg" width="1.25rem" class="svg-inline--fa fa-map-marker-alt" focusable="false" viewBox="0 0 384 512">
<path d="M172.268 501.67C26.97 291.031 0 269.413 0 192 0 85.961 85.961 0 192 0s192 85.961 192 192c0 77.413-26.97 99.031-172.268 309.67-9.535 13.774-29.93 13.773-39.464 0zM192 272c44.183 0 80-35.817 80-80s-35.817-80-80-80-80 35.817-80 80 35.817 80 80 80z" fill="#007bff"></path>
</svg>
Run Code Online (Sandbox Code Playgroud)
标记创建:
const svgMarkup = ''; //The markup from above
const latitude = 47.6062;
const longitude = 122.3321;
const icon = new H.map.Icon(svgMarkup);
return new H.map.Marker({lat: …Run Code Online (Sandbox Code Playgroud)