public async Task <OcspHttpResponse> Respond(OcspHttpRequest httpRequest, RequestMetadata metadata)
    {
        _logger.LogInformation(EventIds.Request, "OCSP request {Method} {Uri} from {RemoteIP}, length: {Length}", httpRequest.HttpMethod, httpRequest.RequestUri, metadata.RemoteIP, httpRequest.Content?.Length);
        var response = await _inner.Respond(httpRequest, metadata);

        _logger.LogInformation(EventIds.Response, "OCSP response {Status}, length: {Length}", response.Status, response.Content.Length);
        return(response);
    }
        /// <summary>
        /// Converts <see cref="HttpRequest"/> to <see cref="OcspHttpRequest"/>
        /// </summary>
        /// <param name="request"><see cref="HttpRequest"/></param>
        /// <returns><see cref="OcspHttpRequest"/></returns>
        public static async Task <OcspHttpRequest> ToOcspHttpRequest(this HttpRequest request)
        {
            var ocspHttpRequest = new OcspHttpRequest();

            ocspHttpRequest.HttpMethod = request.Method;
            ocspHttpRequest.MediaType  = request.ContentType;
            ocspHttpRequest.RequestUri = request.GetUri();
            ocspHttpRequest.Content    = await request.GetRawBodyBytesAsync();

            return(ocspHttpRequest);
        }
        /// <summary>
        /// Converts the <see cref="HttpRequestMessage"/> to <see cref="OcspHttpRequest"/>
        /// </summary>
        /// <param name="requestMessage"><see cref="HttpRequestMessage"/></param>
        /// <returns><see cref="OcspHttpRequest"/></returns>
        public static async Task <OcspHttpRequest> ToOcspHttpRequest(this HttpRequestMessage requestMessage)
        {
            var httpRequestBase = new OcspHttpRequest
            {
                HttpMethod = requestMessage.Method.Method,
                MediaType  = requestMessage.Content.Headers.ContentType.MediaType,
                RequestUri = requestMessage.RequestUri,
                Content    = await requestMessage.Content.ReadAsByteArrayAsync()
            };

            return(httpRequestBase);
        }
 public async Task <OcspHttpResponse> Respond(OcspHttpRequest httpRequest)
 {
     _recorder.RecordRequest();
     return(await _inner.Respond(httpRequest));
 }
예제 #5
0
 public Task <OcspHttpResponse> Respond(OcspHttpRequest httpRequest, RequestMetadata metadata) => _responder.Respond(httpRequest);