using Client.SSE; using System; using System.Collections.Generic; using System.IO; using System.Net.Http; using System.Security.Policy; using System.Text; using System.Text.Json; using System.Text.Json.Serialization; using System.Threading; using System.Threading.Tasks; namespace Client { class Program { static void Main(string[] args) { //SSE try { Console.WriteLine("12536".PadLeft(7, '0')); var cts = new CancellationTokenSource(); var header = new Dictionary() { { "X-Auth-Name", "IES5" } }; //var sse = new EventSource(new Uri("https://localhost:5001/service/sse"), header, 5000); var sse = new EventSource(new Uri("https://teammodelos-test.chinacloudsites.cn/service/sse"), header, 5000); sse.StateChanged += Sse_StateChanged; sse.EventReceived += Sse_EventReceived; sse.Start(cts.Token); //cts?.Cancel(); 中斷SSE Client連線 } catch (TaskCanceledException ex) { Console.WriteLine(ex.Message); } catch (AggregateException ex) { Console.WriteLine(ex.Message); } catch (Exception ex) { Console.WriteLine(ex.Message); } Console.ReadLine(); } private static void Sse_EventReceived(object sender, ServerSentEventReceivedEventArgs e) { var mm = e.Message; Console.WriteLine(mm.Data); } private static void Sse_StateChanged(object sender, StateChangedEventArgs e) { //CONNECTING 0 連線中 //OPEN 1 開啟 //CLOSED 2 關閉 var aa = e.State; Console.WriteLine(aa.ToString()); } } }