Python get调用中的aiohttp ClientSession错误:看到的头字节太多;返回检测到的溢出
这意味着服务器回复时出错,而服务器抱怨的是头的格式不正确 根据消息,很可能服务器的编程方式需要一定数量的头。当前请求通过以下标题发送:Python get调用中的aiohttp ClientSession错误:看到的头字节太多;返回检测到的溢出,python,python-3.x,aiohttp,Python,Python 3.x,Aiohttp,这意味着服务器回复时出错,而服务器抱怨的是头的格式不正确 根据消息,很可能服务器的编程方式需要一定数量的头。当前请求通过以下标题发送: { “主机”:“example.com”, “接受”:“*/*”, “接受编码”:“gzip,deflate”, “用户代理”:“Python/3.8 aiohttp/3.7.4.post0”, “内容长度”:“11”, “内容类型”:“应用程序/json”, } 您可以通过以下方式进行检查: 异步def请求(正文、会话): 与session.post(url
{
“主机”:“example.com”,
“接受”:“*/*”,
“接受编码”:“gzip,deflate”,
“用户代理”:“Python/3.8 aiohttp/3.7.4.post0”,
“内容长度”:“11”,
“内容类型”:“应用程序/json”,
}
您可以通过以下方式进行检查:
异步def请求(正文、会话):
与session.post(url,json=body)异步作为resp:
打印(dict(分别请求和信息标题))
return wait resp.json()
我会检查服务器的文档,看看他们的post
端点到底期望什么。如果要对某个端点进行反向工程,我建议还复制原始请求发送到服务器的头。这将有望解决您的问题
我无法深入研究这个问题,因为我假设url.com
只是一个“临时”域名,您可以将其替换为原始域名(如果出于隐私目的,这是可以理解的)
aiohttp.client_exceptions.ClientResponseError: 400, message='too many header bytes seen; overflow detected', url=URL('https://url.com')