Dav*_*bbo 6 streaming google-chrome http
我们有一个网站,可通过http流文本数据。它是通过以下方式设置的:
Content-Type 是 text/plainTransfer-Encoding 是 chunked当使用纯curl文本或FireFox时,文本从第一个字节流到浏览器。但是,使用Chrome浏览器时,在发送1024个字节之前不会显示任何文本。之后,一切都会立即显示出来。
问题:有没有办法禁用这种缓冲行为?
更多信息:这是一个简单的ASP.NET页面,演示了该行为:
<%@ language=c# %>
<%
Response.BufferOutput = false;
Response.ContentType = "text/plain";
for (int i=0; i<50; i++)
{
Response.Write("01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567\r\n");
System.Threading.Thread.Sleep(1000);
}
%>
Run Code Online (Sandbox Code Playgroud)
使用禁用压缩的web.config:
<configuration>
<system.webServer>
<urlCompression doStaticCompression="false" doDynamicCompression="false"/>
</system.webServer>
</configuration>
Run Code Online (Sandbox Code Playgroud)
我还在http://bufferingtest.azurewebsites.net/上运行了一个实时repro 。只需从Chrome和FireFox两者中点击它,即可观察到不同的行为。
添加X-Content-Type-Options: nosniff到您的标题中,让我知道您的情况。
根据Mozilla 文档:
的
X-Content-Type-Options响应的HTTP标头是由服务器使用以指示在通告的MIME类型的标记Content-Type标头不应该被改变,并且被遵循。这允许选择退出 MIME 类型嗅探,或者换句话说,这是一种表示网站管理员知道他们在做什么的方式。
| 归档时间: |
|
| 查看次数: |
993 次 |
| 最近记录: |