private Task InitTask(HttpListenerContext context, CancellationToken cancellationToken)
        {
            IHttpRequest httpReq = null;
            var          request = context.Request;

            try
            {
                if (request.IsWebSocketRequest)
                {
                    LoggerUtils.LogRequest(_logger, request);

                    ProcessWebSocketRequest(context);
                    return(Task.FromResult(true));
                }

                httpReq = GetRequest(context);
            }
            catch (Exception ex)
            {
                _logger.ErrorException("Error processing request", ex);

                httpReq = httpReq ?? GetRequest(context);
                ErrorHandler(ex, httpReq, true);
                return(Task.FromResult(true));
            }

            var uri = request.Url;

            return(RequestHandler(httpReq, uri.OriginalString, uri.Host, uri.LocalPath, cancellationToken));
        }
Example #2
0
        private Task InitTask(HttpListenerContext context)
        {
            IHttpRequest httpReq = null;
            var          request = context.Request;

            try
            {
                if (request.IsWebSocketRequest)
                {
                    LoggerUtils.LogRequest(_logger, request);

                    ProcessWebSocketRequest(context);
                    return(Task.FromResult(true));
                }

                httpReq = GetRequest(context);
            }
            catch (Exception ex)
            {
                _logger.ErrorException("Error processing request", ex);

                httpReq = httpReq ?? GetRequest(context);
                ErrorHandler(ex, httpReq, true);
                return(Task.FromResult(true));
            }

            return(RequestHandler(httpReq, request.Url));
        }
Example #3
0
        private Task ProcessRequestAsync(HttpListenerContext context)
        {
            var request = context.Request;

            if (request.IsWebSocketRequest)
            {
                LoggerUtils.LogRequest(_logger, request);

                ProcessWebSocketRequest(context);
                return(Task.FromResult(true));
            }

            if (string.IsNullOrEmpty(context.Request.RawUrl))
            {
                return(((object)null).AsTaskResult());
            }

            var httpReq = GetRequest(context);

            return(RequestHandler(httpReq, request.Url));
        }