2012-07-26 14 views
5

मैं एक सी # WinRT एप्लिकेशन विकसित कर रहा हूं जो पोस्ट करता है और वेबसर्वर को अनुरोध करता है।HttpClient HttpResponseMessage पता/URI

क्या किसी को पता है कि HttpClient ऑब्जेक्ट का उपयोग करते समय प्रतिक्रिया यूआरआई/पता प्राप्त करने का कोई तरीका है या नहीं?

यदि मैं HttpWebRequest/HttpWebResponse कक्षाओं का उपयोग करता हूं, तो मैं यह जानकारी प्राप्त कर सकता हूं (HttpWebResponse में ResponseUri प्रॉपर्टी के माध्यम से), लेकिन मुझे नहीं लगता कि HttpClient/HttpResponseMessage कक्षाओं का उपयोग करके इसे कैसे प्राप्त किया जाए।

धन्यवाद

+0

से पुनः निर्देशित यूआई प्राप्त कर सकते हैं बस इस और भी अधिक स्पष्ट बनाने के लिए - 'HttpClient' .NET 4.5 के साथ उपलब्ध होगा। मुझे पता लगाने के लिए थोड़ी देर लग गई कि मुझे अपने 4.0 ढांचे के साथ असेंबली सिस्टम.Net.Http (जिसमें टाइप परिभाषित किया गया है) नहीं मिल रहा है :) –

+2

मुझे लगता है कि आप रीडायरेक्ट यूआई को HttpResponseMessage.RequestMessage.RequestUri –

+0

धन्यवाद पीटर, यह काम करता है। –

उत्तर

2

यह दो साल पुराना है, लेकिन मैं सिर्फ उसी की इच्छा के साथ इस सवाल के पार आया, और यह @PeterRitchie द्वारा एक comment में उत्तर दिया गया है, इसलिए मैं भावी आगंतुकों के लिए कॉपी करने कर रहा हूँ कि।

मुझे लगता है कि आप HttpResponseMessage.RequestMessage.RequestUri

+1

HttpResponseMessage.RequestMessage अनुरोध को संदर्भित करता है जो प्रतिक्रिया संदेश का कारण बनता है। HttpResponseMessage.RequestMessage.RequestUri उस यूरी को संदर्भित करता है जिसे अनुरोध किया गया था कि अंतिम यूरी जिस पर प्रतिक्रिया को रीडायरेक्ट किया गया था। संदर्भ: http://msdn.microsoft.com/en-us/library/system.net.http.httpresponsemessage.aspx – stormwild

+0

@stormwild यह काम करता है, हालांकि ... मैं मानता हूं कि यह सबसे अधिक खोजने योग्य डिज़ाइन नहीं है। लेकिन 'HttpResponseMessage.RequestMessage' हाल ही में किए गए अनुरोध को दर्शाता है। ज्यादातर मामलों में, यह अनुरोध है कि आप फ़ाइल करते हैं। लेकिन यहां वर्णित मामलों में, यह 302 (या आपके पास क्या है) के बाद दायर अनुरोध है। –