Exemplo n.º 1
0
        internal Response(
            CDPSession client,
            Request request,
            HttpStatusCode status,
            Dictionary <string, object> headers,
            bool fromDiskCache,
            bool fromServiceWorker,
            SecurityDetails securityDetails)
        {
            _client           = client;
            Request           = request;
            Status            = status;
            Url               = request.Url;
            _fromDiskCache    = fromDiskCache;
            FromServiceWorker = fromServiceWorker;

            Headers = new Dictionary <string, object>();
            if (headers != null)
            {
                foreach (var keyValue in headers)
                {
                    Headers[keyValue.Key] = keyValue.Value;
                }
            }
            SecurityDetails       = securityDetails;
            BodyLoadedTaskWrapper = new TaskCompletionSource <bool>();
        }
Exemplo n.º 2
0
        private void HandleRequestRedirect(
            Request request,
            HttpStatusCode redirectStatus,
            Dictionary <string, object> redirectHeaders,
            bool fromDiskCache,
            SecurityDetails securityDetails = null)
        {
            var response = new Response(_client, request, redirectStatus, redirectHeaders, fromDiskCache, securityDetails);

            request.Response = response;
            if (request.RequestId != null)
            {
                _requestIdToRequest.Remove(request.RequestId);
            }

            if (request.InterceptionId != null)
            {
                _interceptionIdToRequest.Remove(request.InterceptionId);
                _attemptedAuthentications.Remove(request.InterceptionId);
            }

            Response(this, new ResponseCreatedEventArgs
            {
                Response = response
            });

            RequestFinished(this, new RequestEventArgs
            {
                Request = request
            });
        }
Exemplo n.º 3
0
        public Response(Session client, Request request, HttpStatusCode status, Dictionary <string, object> headers, SecurityDetails securityDetails)
        {
            _client = client;
            Request = request;
            Status  = status;
            _ok     = (int)status >= 200 && (int)status <= 299;
            _url    = request.Url;

            Headers = new Dictionary <string, object>();
            foreach (KeyValuePair <string, object> keyValue in headers)
            {
                Headers[keyValue.Key] = keyValue.Value;
            }
            SecurityDetails = securityDetails;
        }
Exemplo n.º 4
0
        internal Response(CDPSession client, Request request, HttpStatusCode status, Dictionary <string, object> headers, bool fromDiskCache, SecurityDetails securityDetails)
        {
            _client        = client;
            Request        = request;
            Status         = status;
            Url            = request.Url;
            _fromDiskCache = fromDiskCache;

            Headers = new Dictionary <string, object>();
            if (headers != null)
            {
                foreach (KeyValuePair <string, object> keyValue in headers)
                {
                    Headers[keyValue.Key] = keyValue.Value;
                }
            }
            SecurityDetails = securityDetails;
        }
Exemplo n.º 5
0
        private void HandleRequestRedirect(
            Request request,
            HttpStatusCode redirectStatus,
            Dictionary <string, object> redirectHeaders,
            bool fromDiskCache,
            bool fromServiceWorker,
            SecurityDetails securityDetails = null)
        {
            var response = new Response(
                _client,
                request,
                redirectStatus,
                redirectHeaders,
                fromDiskCache,
                fromServiceWorker,
                securityDetails);

            request.Response = response;
            request.RedirectChainList.Add(request);
            response.BodyLoadedTaskWrapper.TrySetException(
                new PuppeteerException("Response body is unavailable for redirect responses"));

            if (request.RequestId != null)
            {
                _requestIdToRequest.Remove(request.RequestId);
            }

            if (request.InterceptionId != null)
            {
                _interceptionIdToRequest.Remove(request.InterceptionId);
                _attemptedAuthentications.Remove(request.InterceptionId);
            }

            Response(this, new ResponseCreatedEventArgs
            {
                Response = response
            });

            RequestFinished(this, new RequestEventArgs
            {
                Request = request
            });
        }