You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用HERE RouteMatching API获取Token后调用接口仍鉴权失败

问题排查与解决方案

1. 鉴权方式冲突导致权限验证失败

你的请求同时使用了OAuth 2.0 Bearer Token(请求头中)和API Key(URL参数中),HERE API不允许同时启用两种鉴权机制,必须二选一:

  • 若使用Bearer Token鉴权,删除URL中的apiKey=${props["here.access.key.id"]}参数;
  • 若使用API Key鉴权,删除请求头里的Authorization字段。

修改后的请求URL示例:

const response = await fetch(`https://routematching.hereapi.com/v8/calculateroute.json?routeMatch=1&mode=fastest;car;traffic:disabled`, {
  method: 'post',
  body,
  headers
})

2. 请求Content-Type设置错误

你上传的是KML格式文件,但设置的Content-Type为application/octet-stream,这会导致API无法正确解析请求体,需替换为KML对应的标准MIME类型:

const headers = {
  "Authorization": `Bearer ${token_data.access_token}`,
  "Cache-Control": "no-cache",
  "Content-Type": "application/vnd.google-earth.kml+xml"
}

3. 验证Token的权限范围

检查获取Token时返回的scope是否包含RouteMatching API的访问权限。你当前的scope为hrn:here:authorization::org...,需确认你的HERE账号所属组织是否已开通RouteMatching API权限,或获取Token时是否请求了正确的权限范围。

若以上调整后仍报错,建议:

  • 确认Token未过期(你的expires_in为86399秒,约24小时,确保调用时Token在有效期内);
  • 检查KML文件格式是否符合HERE RouteMatching API的要求(比如包含合法的坐标点序列)。

内容的提问来源于stack exchange,提问作者kochizufan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 13:17:02