2

我正在开发一个带有 ASP 服务器端的 Web 应用程序,并且我使用 iframe 进行数据推送。

一个 ASP 处理程序会每隔一段时间将一些 javascript 刷新到 iframe:

context.Response.Write("<script language='javascript'>top.update('lala');</script>");
context.Response.Flush();

我的问题是有时,当我收到数据时,我没有得到全文。例如我会收到这个:update('lala');

我的一种解决方法是每 500 毫秒有一个线程刷新'...​​....'。(然后我会收到脚本>......这将完成我的javascript。)

但是我确信必须有办法让 Response.Flush() 发送整个数据块。有人知道如何正确使用 Response.Flush() 吗?

谢谢!

4

1 回答 1

2

显然经过大量谷歌搜索后,我找到了答案。IIS 服务器正在使用 GZIP 压缩输出,然后它似乎会忽略所有 Response.Flush 调用。这在 IIS7 和 Windows 7 中默认打开。如果禁用它,它可以正常工作。

于 2012-08-06T20:03:48.267 回答