पर प्राधिकरण शीर्षलेख खो गया है प्रमाणीकरण करता है, प्रमाणीकरण करता है, प्राधिकरण शीर्षलेख उत्पन्न करता है, और API को कॉल करता है।रीडायरेक्ट
दुर्भाग्य से, मुझे 401 Unauthorized
एपीआई पर GET
अनुरोध के बाद त्रुटि मिलती है।
हालांकि, जब मैं फिडलर में यातायात को पकड़ता हूं और इसे फिर से चलाता हूं, तो एपीआई को कॉल सफल होता है और मैं वांछित 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);
}
जब मैं इस कोड को चलाता हूं तो प्राधिकरण शीर्षलेख खो जाता है।
हालांकि, फिडलर में हेडर सफलतापूर्वक पारित हो गया है।
कोई विचार क्या मैं गलत कर रहा हूं?
जब पुनर्निर्देशन होती है:
आप इस तरह HttpClient का दृष्टांत हैं? आप पुनर्निर्देशन के लिए किस HTTP कोड का उपयोग करते हैं? – tia
@tia मुझे 307 अस्थायी रीडायरेक्ट – Vadim
प्राप्त नहीं है कि यह सुनिश्चित नहीं है कि [यह किसी प्रासंगिकता का है] (http://stackoverflow.com/questions/18914076/can-a-http-redirect-instruct-the-client-to-strip- एक-विशिष्ट-हेडर-से-द-एनई) – pixelbadger