You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Classic Asp + IIS环境下Server-Sent Events(SSE)无法正常工作

IIS 10下Classic ASP环境中Server-Sent Events(SSE)在现代浏览器失效问题

在IIS 10的Classic Asp环境中,SSE无法正常工作,这个问题仅出现在现代浏览器里——我旧IDE集成的旧版Chrome还能正常显示SSE内容。

奇怪的是服务器端和浏览器控制台都没有报错,测试了Edge、Chrome、Firefox三款浏览器,表现完全一致:服务器返回HTTP 200成功响应,但页面上没有任何内容渲染,控制台也没打印数据。在浏览器网络面板里,找不到后端text/stream内容未渲染的原因。更诡异的是,IIS确实在发送数据,因为网络面板会定期出现来自SSE.asp的200状态响应,但看不到流式数据,也不会渲染或打印到控制台:

网络面板中SSE请求的200响应截图

最简演示代码

SSE.html

<!DOCTYPE html>
<html>
<head>
<script>

    if(typeof(EventSource) !== "undefined") {
        var source = new EventSource("SSE.asp");
        source.onmessage = function(event) {
               console.log(event.data)
                   document.getElementById("result").innerHTML += event.data + "<br>";
        };
        } else {
        document.getElementById("result").innerHTML = "Sorry, your browser does not support server-sent events...";
    }
</script>
</head>
<body>
    <h1>Getting server updates</h1>
    <div id="result"></div>
</body>
</html>

SSE.asp

<%
Response.Charset = "utf-8"

Response.ContentType = "text/event-stream"
Response.Expires = -1
       
Response.Write("data: The server time is: " & now())
%>

已尝试的解决方法

  • 禁用浏览器缓存
  • 关闭电脑防火墙
  • 服务器端禁用缓存
  • 在远程IIS共享主机环境测试

以上方法均无效果,有人能找出问题原因及解决方案吗?

内容的提问来源于stack exchange,提问作者M.Y.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 16:24:51