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

使用Python Requests调用TomTom API获取历史事件数据遇596错误

解决TomTom历史事件API返回596错误的方法

核心修复步骤

  • 修正请求方法与参数传递方式:你代码注释写了要发POST请求,但实际用了requests.get(),TomTom的历史事件详情API要求必须用POST方法。同时要把bbox、date、time、fields这些参数放到JSON请求体里,而非URL参数中。改完的代码参考:

    import requests
    
    url = "https://api.tomtom.com/traffic/services/1/history/incidentDetails"
    # 密钥保留在URL参数中,其他参数放入请求体
    params = {"key": "你的API密钥"}
    payload = {
        "bbox": "-73.9345 40.71481 -73.95557 40.70115",
        "date": "2023-05-25",
        "time": "14:00:00",
        "fields": "{incidents{geometry{type,coordinates},properties{iconCategory,startTime,endTime,length}}}"
    }
    
    # 发送POST请求,指定JSON格式传递请求体
    response = requests.post(url, params=params, json=payload)
    print(response)
    # 打印响应内容查看具体错误描述
    print(response.text)
    
  • 验证API密钥权限:确认你的密钥未过期,且账号已开通历史交通事件数据的访问权限,权限不足会直接触发596错误。

  • 核对参数有效性:

    • bbox需严格遵循最小经度 最小纬度 最大经度 最大纬度的顺序,当前坐标格式没问题,但可再确认范围是否合理;
    • date和time格式符合要求,但要确保该时间点确实存在可查询的历史事件数据,空数据也可能返回异常状态码。

调试技巧

直接打印response.text,TomTom的错误响应会包含具体问题描述,比如参数格式错误、权限缺失等,能帮你快速定位问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 13:27:28