Chrome POST请求头部异常致自制HTTP服务器无法接收表单数据
问题:Chrome访问本地HTTP服务器时POST数据丢失且连接重置
我今年15岁,数学和编程能力还不太强,英语也不好,先致歉。我正在从零编写HTTP服务器,目前在集成PHP,需要从请求头读取大量数据。代码在Edge、OperaGX甚至IE中都能正常运行,但Google Chrome不会发送POST表单中的数据,导致我无法读取这些数据并传递给PHP,进而使$_POST变量在Chrome中失效。提交表单后,Chrome不会加载.php文件,只会抛出ERR_CONNECTION_RESET错误。
复现代码(仅支持Windows)
启动服务器代码:
def main() -> None: server: Server = Server(docs_dir='docs', port=3033) server.activate_php(php_dir='C:\\php', php_ini='c:\\php\\php.ini') server.start()
请求格式对比
正常POST请求格式
POST /index.php?submit=1 HTTP/1.0 Accept: ... Refferer: ... username=Fido&password=example
Chrome发送的请求格式
POST /index.php?submit=1 HTTP/1.0 Accept: ... Refferer: ...
更新信息
使用http://localhost:3033访问时仅Chrome出现问题,改用http://192.168.178.45:3033则可正常运行,怀疑是Chrome的安全特性导致。
内容的提问来源于stack exchange,提问作者Fido_de07
相关产品推荐
相关产品推荐

