установите allowautoredirect = false в пользовательском HttpClientHandler - PullRequest
0 голосов
/ 23 марта 2020

У меня есть пользовательский HttpClientHandler, как показано ниже

public class CustomHttpClientHandler : HttpClientHandler
{
    protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
    {
        var bytes = Encoding.ASCII.GetBytes(await request.Content.ReadAsStringAsync());

        request.Headers.Add("RequestSignature", Convert.ToBase64String(bytes));

        return await base.SendAsync(request, cancellationToken);
    }
}

Я хочу установить allowautoredirect= false в этом CustomHttpClientHandler, как я могу это сделать, чтобы он применялся ко всем запросам?

Я используя это так:

var client = new HttpClient(new CustomHttpClientHandler());

https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclienthandler.allowautoredirect?view=netframework-4.8

1 Ответ

0 голосов
/ 24 марта 2020

Вы можете установить свойство AllowAutoRedirect в конструкторе, например

public class CustomHttpClientHandler : HttpClientHandler
{
    public CustomHttpClientHandler() : base() {
      // setup props
      AllowAutoRedirect = true;
    }

    protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) {
      // your stuff
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...