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

如何向OSRM的/table/v1/car接口传入hint参数实现运行时优化

OSRM /table/v1/car接口传入hint参数实现方法

hint参数可以通过URL查询参数hints传入,和请求中的坐标一一对应即可生效,具体实现规则如下:

1. 传参核心规则

  • hint值与请求路径中的坐标严格按顺序一一对应,有多少个坐标就需要提供多少个hint占位
  • 多个hint值之间用分号;分隔,作为hints参数的取值拼接在URL末尾
  • 若部分坐标无可用hint,对应位置留空即可,不要删除分隔用的分号

2. 实际请求示例

以你给出的场景为例:
原请求路径:
/table/v1/car/-0.693000,52.078000;-0.724000,52.040000
已拿到第一个坐标的hint值为uImugOqJroBBAAAAAAAAALoBAAAAAAAA7WvYQQAAAACaUzhDAAAAAEEAAAAAAAAAugEAAAAAAAAXCgAAmXb1__mxGgP4bPX_sKUaAwYALwrjJ41R,假设第二个坐标暂未获取到hint,拼接后的带hint请求为:
/table/v1/car/-0.693000,52.078000;-0.724000,52.040000?hints=uImugOqJroBBAAAAAAAAALoBAAAAAAAA7WvYQQAAAACaUzhDAAAAAEEAAAAAAAAAugEAAAAAAAAXCgAAmXb1__mxGgP4bPX_sKUaAwYALwrjJ41R;

3. 常见失败原因排查

  • 坐标与hint顺序不匹配:顺序错位会导致hint失效,甚至返回错误的道路匹配结果
  • 占位数量不匹配:如果请求有2个坐标,hints参数分隔后必须得到2个值,缺少分号导致占位不足会直接报错
  • hint值被修改:hint是OSRM内部编码的二进制字符串,不要对返回的hint做转义、截断、字符替换等操作,直接原封不动传入即可

4. 生效验证方法

传入正确的hint后,返回结果中sources/destinations数组对应位置的distance字段值为0,说明已经跳过了重新吸附道路的步骤,hint成功生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 12:24:04