Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google chrome Google Chrome为Ajax调用返回ERR_HTTP2_SERVER_densed_流_Google Chrome_Http_Http Headers_Http2 - Fatal编程技术网

Google chrome Google Chrome为Ajax调用返回ERR_HTTP2_SERVER_densed_流

Google chrome Google Chrome为Ajax调用返回ERR_HTTP2_SERVER_densed_流,google-chrome,http,http-headers,http2,Google Chrome,Http,Http Headers,Http2,我在Google Chrome 85上遇到了一个问题,而我在早期版本中似乎没有遇到这个问题 我触发了一个ajax调用,该调用上载一个文件,以便在Web服务器上处理该文件。 这个调用是一个非常基本的多部分xhr POST请求,用于上载文件 出于某种原因,谷歌浏览器(和Firefox)拒绝接受来自Web服务器的响应。Chrome Devtools在XHR请求的状态列中显示“(失败的)net::ERR_HTTP2_SERVER_densed_STREAM”。但我不知道为什么浏览器似乎拒绝流 我能够用c

我在Google Chrome 85上遇到了一个问题,而我在早期版本中似乎没有遇到这个问题

我触发了一个ajax调用,该调用上载一个文件,以便在Web服务器上处理该文件。 这个调用是一个非常基本的多部分xhr POST请求,用于上载文件

出于某种原因,谷歌浏览器(和Firefox)拒绝接受来自Web服务器的响应。Chrome Devtools在XHR请求的状态列中显示“(失败的)net::ERR_HTTP2_SERVER_densed_STREAM”。但我不知道为什么浏览器似乎拒绝流

我能够用curl调试return&fetch HTTP头,但我不知道return-HTTP头有什么问题,也不知道为什么Google Chrome(和其他浏览器)似乎拒绝这个结果

有没有关于如何调试这些HTTP头的“有效性”的想法或建议?或者他们被拒绝的原因

请求标题(从chrome devtools复制并粘贴):

以curl显示的返回头和返回体如下所示:

HTTP/2 200
date: Thu, 03 Sep 2020 19:21:37 GMT
server: Apache
x-powered-by: PHP/7.2.33
x-generation-time: 0,02101s
set-cookie: PHPSESSID=9a7d2c08b9506a02c18f864fb09262a4; path=/
vary: Accept-Encoding
content-encoding: gzip
content-length: 272
content-type: application/json
x-varnish: 565546302
age: 0
via: 1.1 varnish (Varnish/6.4)
accept-ranges: bytes

{"success":true, <and much more, redacted>}
HTTP/2200 日期:2020年9月3日星期四19:21:37 GMT 服务器:Apache x-powered-by:PHP/7.2.33 x代时间:002101s 设置cookie:PHPSESSID=9a7d2c08b9506a02c18f864fb09262a4;路径=/ 改变:接受编码 内容编码:gzip 内容长度:272 内容类型:application/json x-清漆:565546302 年龄:0 通孔:1.1清漆(清漆/6.4) 接受范围:字节 {“成功”:正确,} 我看不出返回或请求头有任何错误,我不知道为什么XHR调用被Chrome阻止,并给出:“(失败)net::ERR_HTTP2_SERVER_densed_STREAM”

有什么想法吗?或者我可以调试或验证请求/返回头的建议? 非常感谢

干杯。,
B.

这可能对您的具体情况没有多大帮助,但我还是想在此进行权衡:

昨天我的表单发布文件出现了完全相同的问题/错误消息。在我的例子中,错误只在文件大小超过10KB时出现,低于10KB的上传不会造成问题

不同web服务器上的相同表单在上载相同的较大文件时没有显示任何问题。这让我相信,至少在我的案例中,这是一个服务器端配置问题


就我而言,从今天起它就自行解决了。

后续:我联系了发生此问题的网站托管提供商的支持团队,他们进行了调查。 正如@Maarten Cuypers所指出的,这似乎是一个服务器端,因为他们承认了问题&24小时后问题得到了解决。我没有对我的应用层做任何更改


不幸的是,我没有指示他们对服务器配置做了哪些更改,因此我无法发布答案…:-(

对于来自谷歌的人来说,有一个答案有更多的原因

在我的例子中,我使用的是office VPN。VPN似乎正在将HTTP2请求降级到HTTP/1.1,并且服务器连续地通过ERR_HTTP2_server_renked_流拒绝它们

HTTP/2 200
date: Thu, 03 Sep 2020 19:21:37 GMT
server: Apache
x-powered-by: PHP/7.2.33
x-generation-time: 0,02101s
set-cookie: PHPSESSID=9a7d2c08b9506a02c18f864fb09262a4; path=/
vary: Accept-Encoding
content-encoding: gzip
content-length: 272
content-type: application/json
x-varnish: 565546302
age: 0
via: 1.1 varnish (Varnish/6.4)
accept-ranges: bytes

{"success":true, <and much more, redacted>}