protected override void ProcessRequest(HttpRequest request) { OnRequest?.Invoke(request); if (OnRequest.GetInvocationList().Length == 0) { request.Respond("This request is not handled.", System.Net.HttpStatusCode.BadRequest); } }
private void onMessage(object sender, MessageEventArgs e) { Log.Trace("onMessage: " + e.Data); if (e.IsText) { var command = CommandBase.FromJson(e.Data); var receivers = OnRequest.GetInvocationList(); foreach (EventHandler <CommandBase> receiver in receivers) { OnRequest?.BeginInvoke(this, command, null, null); } } }
public virtual bool OnHttpRequest(HttpListenerContext request) { if (string.IsNullOrWhiteSpace(SubUrl)) { return(false); } if (request.Request.RawUrl.IndexOf(SubUrl) == 0) //In The Beginning { if (OnRequest == null) { return(false); } if (OnRequest.GetInvocationList().Length > 1) { throw new ArgumentException("OnDataFetched不能接受多个连接"); } OnRequest(request, SubUrl); return(true); } return(false); }