Заголовок авторизации теряется при перенаправлении
Ниже приведен код, который выполняет аутентификацию, генерирует заголовок авторизации и вызывает API.
К сожалению, я получаю401 Unauthorized
ошибка послеGET
запрос по API.
Однако, когда я собираю трафик в Fiddler и повторяю его, вызов API успешен, и я вижу желаемое200 OK
код состояния.
[Test]
public void RedirectTest()
{
HttpResponseMessage response;
var client = new HttpClient();
using (var authString = new StringContent(@"{username: ""theUser"", password: ""password""}", Encoding.UTF8, "application/json"))
{
response = client.PostAsync("http://host/api/authenticate", authString).Result;
}
string result = response.Content.ReadAsStringAsync().Result;
var authorization = JsonConvert.DeserializeObject<CustomAutorization>(result);
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(authorization.Scheme, authorization.Token);
client.DefaultRequestHeaders.Add("Accept", "application/vnd.host+json;version=1");
response =
client.GetAsync("http://host/api/getSomething").Result;
Assert.True(response.StatusCode == HttpStatusCode.OK);
}
Когда я запускаю этот код, заголовок авторизации теряется.
Однако в Fiddler этот заголовок успешно передан.
Есть идеи, что я делаю не так?