0
我正在使用ServerEventsClient服務器端事件給客戶端。目前,如果我關閉了服務器,客戶端在再次可用時不會自動重新連接。ServiceStack ServerEventsClient自動重新連接
如何讓它自動嘗試連接?
我正在使用ServerEventsClient服務器端事件給客戶端。目前,如果我關閉了服務器,客戶端在再次可用時不會自動重新連接。ServiceStack ServerEventsClient自動重新連接
如何讓它自動嘗試連接?
我們的測試也表明,ServerEventsClient
做應用服務器重新啓動時自動重新連接,這裏有一個簡單的測試,我們使用:
var client = new ServerEventsClient("http://localhost:11001", "home")
{
OnConnect = ctx => "OnConnect: {0}".Print(ctx.Channel),
OnCommand = msg => "OnCommand: {0}".Print(msg.Data),
OnException = ex => "OnException: {0}".Print(ex.Message),
OnMessage = msg => "OnMessage: {0}".Print(msg.Data),
OnHeartbeat =() => "OnHeartbeat".Print()
};
client.Handlers["chat"] = (source, msg) =>
{
"Received Chat: {0}".Print(msg.Data);
};
await client.Connect();
,並顯示了ServerEventClient自動重新連接日誌,當應用服務器它連接以重新啓動:
OnConnect:
OnCommand: [email protected] {"userId":"-2","isAuthenticated":"false","displayName":"user2","channels":"home","profileUrl":"https://raw.githubusercontent.com/ServiceStack/Assets/master/img/apps/no-profile64.png"}
OnHeartbeat
Received Chat: [email protected] {"id":1,"fromUserId":"-1","fromName":"user1","message":"1","private":false}
OnMessage: [email protected] {"id":1,"fromUserId":"-1","fromName":"user1","message":"1","private":false}
Received Chat: [email protected] {"id":2,"fromUserId":"-1","fromName":"user1","message":"2","private":false}
OnMessage: [email protected] {"id":2,"fromUserId":"-1","fromName":"user1","message":"2","private":false}
OnHeartbeat
OnHeartbeat
OnException: The remote server returned an error: (404) Not Found.
OnConnect:
OnCommand: [email protected] {"userId":"-3","isAuthenticated":"false","displayName":"user3","channels":"home","profileUrl":"https://raw.githubusercontent.com/ServiceStack/Assets/master/img/apps/no-profile64.png"}
Received Chat: [email protected] {"id":1,"fromUserId":"-2","fromName":"user2","message":"1","private":false}
OnMessage: [email protected] {"id":1,"fromUserId":"-2","fromName":"user2","message":"1","private":false}
Received Chat: [email protected] {"id":2,"fromUserId":"-2","fromName":"user2","message":"2","private":false}
OnMessage: [email protected] {"id":2,"fromUserId":"-2","fromName":"user2","message":"2","private":false}
OnHeartbeat
OnHeartbeat
如果您有代碼複製問題,請將其提交到ServiceStack's Issue Tracker。