2017-04-11 95 views
2

只是我有註釋部分,當我向數據庫發佈一些註釋時,signalr正在調用所有客戶端上的方法。SignalR - 當用戶未經授權時不會調用客戶端方法

var hub = GlobalHost.ConnectionManager.GetHubContext<NotificationsHub>(); 
hub.Clients.All.updateBlogComments(Mapper.Map<BlogCommentViewModel>(comment)); 

的問題是,當一個用戶,誰只是一個頁面的訪客,沒有登錄到系統中,不會被調用客戶端的方法updateBlogComments。

如果有2個登錄用戶訪問同一頁面,則這兩個用戶都會調用該方法,並且沒有問題。但是,當記錄的用戶發佈評論時,未經授權的用戶將不會將新上傳的評論作爲這應該。

我該如何解決該問題。我希望授權和非授權用戶查看實時評論上傳。

謝謝

+1

您確定未經授權的用戶正確連接到集線器嗎?也許連接到集線器的代碼路徑不會被未經授權的用戶執行,或者您的集線器端點需要授權。 – Stilgar

回答

1

已解決。

我故意爲這個動作創建了一個單獨的集線器,它不需要授權,但我忘了更改hubcontext的名稱,因此我沒有更改CommentsHub,而是調用NotificationsHub。

感謝@Stilgar,提醒我問題可能出在哪裏。