.NET Server发送带有Reactive Extensions的事件

时间:2016-08-05 14:12:05

标签: c# .net server-sent-events

我试图在HTML5 / JS和服务器端C#中使用客户端IHM来实现SSE (Server Sent Events)模型。我正在使用COTS来实现一个事件驱动的http服务器,其中包含.NET中的Reactive Extensions。

客户端SIDE

var evtSource = new EventSource("http://127.0.0.1:4444");
source.onmessage = function(event) 
{
document.getElementById("result").innerHTML += event.data + "<br>";
};

1.浏览器告诉我&#34; Cross-Origin Request&#34;被拒绝了。我在同一个域名上,这是正常的吗?

2.是否有可能使这个http服务器适应SSE?如果这是不可能的,你知道一些实现SSE服务器端的.NET库(没有copyleft)吗?

感谢您的考虑。

1 个答案:

答案 0 :(得分:2)

  1. 可以通过在标题中添加“Origin:*”来修复交叉原点。这可以在不同的地方完成,具体取决于您的架构。使用MVC,可以在global.asax中设置。使用owin auth时,您可以使用此行设置身份验证的位置:config.EnableCors();我确信在谷歌搜索“跨性别”时有很多东西可以找到。
  2. 我不熟悉SSE。但如果它不适合你,你可以查看SignalR。(http://www.asp.net/signalr/overview/guide-to-the-api/hubs-api-guide-net-client) 当我构建一个具有聊天功能的网站时,我发现它很容易实现。