http net::ERR_HTTP2_PROTOCOL_ERROR 报错问题查找

2021-07-14 21:28:45 浏览数 (1)

cgi服务一直正常运行,某天,突然线上反馈 net::ERR_HTTP2_PROTOCOL_ERROR 这个错误。一脸懵

chrome 上查看不到 response。 cgi 日志一切正常。

开启 fiddler 后, 刷新页面又正常。(应该是fiddler代理做了一些二次处理。)

从fiddler上可以看到 header 里 有 特殊字符,在后端日志也看得到

代码语言:javascript复制
nick:"177177177177"   // 后端日志打印是这个字符串

"nick":"",            // response header里这个

这个特殊字符影响到了Agent对response的解析处理。

复现路径:

代码语言:javascript复制
//test.php

<?php
	header('Logininfo: '.'{"nick":""}');
?>

注意:这个特殊字符在body里时,是么有问题的,只是在header里才有问题。

浏览器打开就会报错。

解决办法:加万能的urlencode。

0 人点赞