試圖處理這個問題,但不明白爲什麼出這種錯誤。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