我有两个python应用程序在不同的端口上运行,使用网页.py. 我尝试从一个应用程序发送30000-40000个字符长的JSON字符串到另一个应用程序。JSON包含生成powerpoint报告所需的所有信息。我试着用这样的请求启用此通信:
import requests
template = <long JSON string>
url = 'http://0.0.0.0:6060/api/getPpt?template={}'.format(template)
resp= requests.get(url).text
我注意到,在接收端,json被截断为803个字符,因此当它解码json时,我得到:
^{pr2}$我认为这必须限制URL请求的长度,无论从哪一个网页.py或者要求,或者这是一个标准化的东西。有没有办法解决这个问题,或者我需要找到另一种方法来实现这两个python应用程序之间的通信。如果通过http发送这么长的json是不可能的,请您提出替代方案。谢谢!在
不要把那么多的数据放到一个URL中。大多数浏览器将URL(包括查询字符串)的总长度限制在2000个字符左右,服务器限制在8000个左右。在
请参见What is the maximum length of a URL in different browsers?,其中引用了HTTP/1.1标准RFC7230:
您需要在请求主体中发送那么多数据。使用POST或PUT作为方法。在
requests
库本身对URL长度没有任何限制;它将URL发送到服务器而不截断它。是您的服务器在这里截断了它,而不是给您一个414 URI Too Long状态代码。在相关问题 更多 >
编程相关推荐