पर HTTP प्रमाणीकरण पैरामीटर को सही तरीके से भेज रहा है, मैं माइक्रोसॉफ्ट के HttpClient
का उपयोग कर किसी तृतीय पक्ष रीस्टफुल सेवा के लिए अनुरोध कर रहा हूं। यह एक उदाहरण के अलावा निष्पक्ष रूप से काम करता है (और इसे लागू करना बहुत आसान है)।माइक्रोसॉफ्ट.एचटीपी.एचटीपी क्लाइंट, रीडायरेक्ट
"जिस तरह से समूह संसाधन काम करता है के लिए पोस्ट कि इसके पूर्ण होने पर, यह समूह उदाहरण के लिए एक HTTP 302 रीडायरेक्ट करता है: यहाँ क्या त्रुटि दौरान उत्पन्न हो रही है के रूप में प्रदाता से एक टूटने है संसाधन। ऐसा प्रतीत होता है कि आपका HTTP क्लाइंट POST को उचित प्रमाणीकरण जानकारी भेज रहा है, जो समूह संसाधन बनाता है, लेकिन जब यह HTTP 302 अनुरोध के लिए GET को संभालता है, तो यह सही प्रमाण-पत्र नहीं भेज रहा है और एक 401 प्रतिक्रिया प्राप्त हो रही है। क्या आप अपनी क्लाइंट लाइब्रेरी की जांच कर सकते हैं और यह सुनिश्चित कर सकते हैं कि यह HTTP ऑथ पैरामीटर को रीडायरेक्ट पर सही तरीके से भेज रहा हो? "
यहाँ मेरी पोस्ट कोड है:
HttpClient http = new HttpClient(BASE_URL);
http.TransportSettings.Credentials = new NetworkCredential(ACCOUNT_SID,
ACCOUNT_TOKEN);
HttpResponseMessage httpResponse = http.Post(groupUri, "application/xml",
HttpContent.Create(xml.ToString()));
result = httpResponse.Content.ReadAsString();
कौन मुझे मेरे सवाल का होता है, HttpClient
कक्षा का उपयोग करके इस जीईटी रीडायरेक्ट को भेजने के लिए मैं प्रमाणीकरण पैरामीटर कैसे प्राप्त करूं?
यह कुकीज़ हो सकती है जो वे शायद अपने सत्र के लिए उपयोग करते हैं जिन्हें आप नहीं भेज रहे हैं (उनसे पूछें)। प्रत्येक रीडायरेक्ट के बाद लॉगिन जानकारी का अनुरोध करने के लिए अजीब होगा (जब तक कि यह किसी भिन्न वेब ऐप या सर्वर को फिर से न हो)। –
- जारोस्लाव, मैं कुकीज़ के बारे में उनके उत्तर पर इंतजार कर रहा हूं। जहां तक उन्हें भेजना है, क्या आप उचित तरीके से अवगत हैं? मैंने इस लाइन को जोड़ने का प्रयास किया: http.TransportSettings.Cookies = new CookieContainer(); कोई किस्मत के साथ ... – Drew
क्या आप डब्लूसीएफ आरईएसटी स्टार्टर किट से एचटीपी क्लाइंट का उपयोग कर रहे हैं? कौन सा फ्रेमवर्क? क्या HttpClient को स्वचालित रूप से रीडायरेक्ट का पालन करने के लिए नियंत्रित करने के लिए कोई गुण है? (HttpWebRequest.AllowAutoRedirect के समान)? –