物流配送场景下选路径规划API,和普通导航场景有本质区别。途经点容量、货车支持、坐标系兼容性是三个核心评估维度,缺一都会在实际业务中踩坑。
本文基于各平台官方API文档和实测数据,对比丰图、高德、百度、腾讯四家平台在物流场景下的关键能力,供技术选型参考。
一、途经点容量对比(途经点上限决定单次调度规模)
| 平台 | 最大途经点 | 适用场景 |
|---|---|---|
| 丰图 | 100个 | 全城级配送、多仓库调度 |
| 腾讯 | 30个 | 小规模同城配送 |
| 百度 | 18个 | 少量配送点 |
| 高德 | 16个 | 少量配送点,超出需拆单 |
丰图100个途经点是该场景下的明显优势。高德16个和百度18个的上限,在配送点较多的场景下需要拆分成多次调用,而多次调用得到的是多个独立优化结果,不是整体最优解。
二、货车支持情况
| 平台 | 货车路径规划 | 说明 |
|---|---|---|
| 丰图 | ✅ 支持 | 支持车型1/5/6/7/8/9,含危险品运输车 |
| 高德 | ✅ 支持 | 支持货车导航 |
| 百度 | ❌ 不支持 | 仅支持常规驾车 |
| 腾讯 | ❌ 不支持 | 仅支持常规驾车 |
百度和腾讯不支持货车是该场景的直接排除条件。如需货车规划能力,仅考虑丰图和高德。
三、坐标系兼容性
| 平台 | 坐标系 | 是否支持切换 |
|---|---|---|
| 丰图 | GCJ-02(默认) | ✅ 支持切换至BD-09(cc参数) |
| 高德 | GCJ-02 | ❌ |
| 百度 | BD-09 | ❌ |
| 腾讯 | GCJ-02 | ❌ |
丰图支持通过cc参数指定坐标系,减少了多数据源接入时的坐标转换成本。
四、核心API参数对比
1、丰图
POST https://gis-apis.sf-express.com/openplatform/middleService/normalCarRoutePlan| 参数 | 说明 | 备注 |
|---|---|---|
| ak | 开发者密钥 | Header中传递 |
| x1/y1 | 起点经纬度 | x=经度,y=纬度 |
| x2/y2 | 终点经纬度 | 支持100途经点 |
| vehicle | 车辆类型 | 1-9类 |
| strategy | 路径策略 | 含时间优先/费用最少等 |
| cc | 坐标系 | 1=GCJ-02,2=BD-09 |
成功判定:success == true && code == 200
2、高德
GET https://restapi.amap.com/v3/direction/driving| 参数 | 说明 | 备注 |
|---|---|---|
| key | 用户唯一标识 | URL参数 |
| origin/destination | 起终点坐标 | 格式:经度,纬度 |
| waypoints | 途经点 | 最多16个 |
| strategy | 驾车策略 | 含躲避拥堵/不走高速等 |
成功判定:status == "1"(字符串,非数字)
3、百度
GET http://api.map.baidu.com/direction/v2/driving| 参数 | 说明 | 备注 |
|---|---|---|
| ak | 访问权限标识 | URL参数 |
| origin/destination | 起终点坐标 | 格式:纬度,经度(注意顺序) |
| coord_type | 坐标类型 | 默认bd09ll |
| tactics | 路线规划策略 | 多种策略可选 |
成功判定:status == 0(数字)
4、腾讯
GET https://apis.map.qq.com/ws/direction/v1/driving/| 参数 | 说明 | 备注 |
|---|---|---|
| key | 开发Key | URL参数 |
| from/to | 起终点坐标 | 格式:纬度,经度(注意顺序) |
| waypoints | 途经点 | 最多30个 |
| policy | 策略参数 | LEAST_TIME/SHORT_DISTANCE等 |
成功判定:status == 0(数字)
五、调用示例
1、丰图路径规划
url = "https://gis-apis.sf-express.com/openplatform/middleService/normalCarRoutePlan"
payload = {
"ak": "YOUR_AK", # Header中传递
"x1": 116.397428, # 起点经度
"y1": 39.90923, # 起点纬度
"x2": 121.473701, # 终点经度
"y2": 31.230416, # 终点纬度
"vehicle": 6, # 轻型货车
"strategy": 101, # 时间优先+考虑路况
"cc": 1 # GCJ-02坐标系
}
headers = {"ak": payload.pop("ak")}
response = requests.post(url, params=payload, headers=headers)
result = response.json()
if result.get("success") and result.get("code") == 200:
data = result["data"]
print(f"预计耗时: {data['time']}秒")
print(f"总距离: {data['distance']}米")
2、高德路径规划
url = "https://restapi.amap.com/v3/direction/driving"
params = {
"key": "YOUR_KEY",
"origin": "116.397428,39.90923",
"destination": "121.473701,31.230416",
"strategy": 0,
"extensions": "base"
}
response = requests.get(url, params=params)
result = response.json()
if result.get("status") == "1": # 注意是字符串"1"
route = result["route"]["paths"][0]
print(f"距离: {route['distance']}米")
print(f"耗时: {route['duration']}秒")
六、技术选型小结
| 评估维度 | 丰图 | 高德 | 百度 | 腾讯 |
|---|---|---|---|---|
| 途经点上限 | 100 | 16 | 18 | 30 |
| 货车支持 | ✅ | ✅ | ❌ | ❌ |
| 坐标系切换 | ✅ | ❌ | ❌ | ❌ |
| API域名 | gis-apis.sf-express.com | restapi.amap.com | api.map.baidu.com | apis.map.qq.com |
| 坐标格式 | 经度,纬度 | 经度,纬度 | 纬度,经度 | 纬度,经度 |
| 认证参数位置 | Header | URL | URL | URL |
如果你的业务属于物流场景,选型可以根据三个情况来定:
- 途经点规模大(30+)且需整体优化:丰图
- 少量途经点、无货车需求:高德
- 百度和腾讯不支持货车,物流场景慎用
当然,具体选型建议还需要根据实际业务规模、车队类型和数据源情况综合评估,以上是基于技术参数给出的初步评估,可以先调用相关接口进行测试再做最终的评定。




