试图处理这个问题,但不明白为什么出这种错误。ServiceStack服务器端事件错误
我在cosable谷歌浏览器中得到这个错误:EventSource的响应有一个不是“text/event-stream”的MIME类型(“text/html”)。中止连接。
public class Item {
public int Index { get; set; }
public int Value { get; set; }
}
public class DataRetModel {
public List<Item> Items { get; set; }
public Item Item { get; set; }
}
ServerEvents.NotifySession(user.SessionId, new DataRetModel{...init...});
感谢您的帮助!
.........
分析使用菲德勒(为理念感谢@mythz)的请求后,我发现以下几点: 存在正在运行的服务器事件处理程序2客户端浏览器,如果你在一个浏览器中注销,然后另一个会得到2个事件,一个正常,另一个“EventSource”的响应具有MIME类型“(http status = 401)。
现在的问题是,为什么两个客户端都收到所有事件,如果我向他们发送SessionId?
您可以让每个用户都能收到他们的活动吗?
var eventSource = new EventSource('/ event-stream');
处理程序在客户端上:
$(eventSource).handleServerEvents({
handlers: {
DataRetModel: function (data) {
console.log(data);
}
}
});
在查看您可以使用Chrome的WebInspector或Fiddler捕获的原始HTTP响应时,很可能会使问题显而易见,请更新您的问题以包含该问题(以及针对将来出现意外响应的问题) 。 – mythz