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

requests解码失败:该错误源于目标站点还是脚本问题?

问题诊断:InvalidMessageException 成因分析

先给你拍板:这个错误大概率是脚本的请求格式不匹配导致的,不是目标站点的问题。

咱们拆解下问题:
你明确设置了请求头Content-Type: Application/json,相当于告诉服务器「我发的是JSON格式的数据哈」,但实际传参时用的是data=payload——这时候requests会默认把字典编码成表单格式(application/x-www-form-urlencoded),等于你嘴上说发JSON,实际递过去的是表单数据,服务器接收到后完全没法按JSON解析,直接就抛出了InvalidMessageException。

给你两个快速修复的方案:

  • 方案一(推荐):直接用requests的json参数传payload,它会自动帮你把字典转成JSON字符串,还会自动适配Content-Type(和你手动设置的也不冲突):
output = session.post(url, json=payload)
  • 方案二:手动把字典转成JSON字符串再用data传,记得导入json模块:
import json
output = session.post(url, data=json.dumps(payload))

如果改完还是报类似错误,再去排查目标站点的问题(比如URL是否正确、有没有权限限制、参数字段是否符合要求),但目前来看90%以上的概率是请求格式不匹配的锅。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 08:27:33