Удаление заголовка из RestSharp RestRequest - PullRequest
0 голосов
/ 30 августа 2018

Есть ли способ удалить заголовок из RestSharp RestRequest?

Я наткнулся на эту проблему на странице проекта, но не вижу, что она когда-либо применялась:

https://github.com/restsharp/RestSharp/issues/959

Есть одно предложение использовать request.Parameters.remove (), предполагая, что в качестве параметра используется имя заголовка, но я не понимаю, как это должно соответствовать удалению заголовка.

Я, вероятно, просто запутался, кто-нибудь может помочь?

1 Ответ

0 голосов
/ 22 июля 2019

Свойство Parameters для RestRequest имеет неправильное имя. Его следует назвать Headers, потому что это все, что есть; List заголовков запроса. Поэтому, чтобы удалить один или несколько заголовков из запроса, вы должны сначала найти заголовок в списке, а затем удалить его методом List.Remove().

Например, этот фрагмент удаляет каждый заголовок Authorization из запроса. Я использовал это для удаления старых и устаревших токенов авторизации из запроса перед добавлением нового.

foreach (var oldAuthHeader in request.Parameters.Where(p => p.Name.Equals("Authorization", StringComparison.OrdinalIgnoreCase)).ToArray())
{
    request.Parameters.Remove(oldAuthHeader);
}
...