private void OnRequest(IAsyncResult state) { var listener = (HttpListener)state.AsyncState; if (listener == null || !listener.IsListening) { return; } var context = listener.EndGetContext(state); var req = context.Request; var res = context.Response; var resWriter = new StreamWriter(res.OutputStream); OnReceiveRequest?.Invoke(req, res); try { var resText = "\"ok\"\r\n\r\n"; resWriter.Write(resText); resWriter.Flush(); resWriter.Close(); } catch { // nop } listener.BeginGetContext(OnRequest, listener); }
void IHostListener.OnHostReceiveRequest(ConnectionRequest request, Reader message) { OnReceiveRequest?.Invoke(request, message); }