WebRequest
का उपयोग करते हुए मैं अगर मैं एकमैं 302 प्रतिक्रिया के लिए कैसे जांच करूं? WebRequest
मिल जानना चाहता हूँ "302 अस्थायी रूप से स्थानांतरित"
प्रतिक्रिया के बजाय स्वचालित रूप से नए यूआरएल मिलता है।
WebRequest
का उपयोग करते हुए मैं अगर मैं एकमैं 302 प्रतिक्रिया के लिए कैसे जांच करूं? WebRequest
मिल जानना चाहता हूँ "302 अस्थायी रूप से स्थानांतरित"
प्रतिक्रिया के बजाय स्वचालित रूप से नए यूआरएल मिलता है।
होना चाहिए आप के बजाय यह स्वचालित रूप से करने के लिए false
WebRequest
बना सकते हैं और AllowAutoRedirect
गुण सेट निम्न में से, एक रीडायरेक्ट प्रतिक्रिया का पता लगाने चाहते हैं:
HttpWebRequest request = WebRequest.Create(someUrl) as HttpWebRequest;
request.AllowAutoRedirect = false;
HttpWebResponse response = request.GetResponse() as HttpWebResponse;
if (response.StatusCode == HttpStatusCode.Redirect ||
response.StatusCode == HttpStatusCode.MovedPermanently)
{
// Do something here...
string newUrl = response.Headers["Location"];
}
का उपयोग करके मुझे क्या दिया है, मैंने कॉपी/चिपकाया है, मैंने इसे स्वयं सत्यापित नहीं किया है, लेकिन मुझे बस कुछ कह रहा है: "यदि HttpWebRequest.AllowAutoRedirect संपत्ति है झूठी, HttpStatusCode.Found एक अपवाद फेंकने का कारण बन जाएगा। " स्रोत: http://www1.cs.columbia.edu/~lok/csharp/refdocs/System.Net/types/HttpStatusCode.htm –
@ नाथन: मैं वास्तव में नहीं देखता कि कैसे, HttpStatusCode एक enum है। लिंक किए गए दस्तावेज़ ('.html' बीटीडब्लू में समाप्त होने की आवश्यकता है) पुराना प्रतीत होता है; वह वाक्य शायद एक कट-पेस्ट बग था। – devstuff
बीटीडब्ल्यू, आप HttpStatusCode.Redirect (302 के लिए अन्य उपनाम) का भी उपयोग कर सकते हैं, जो थोड़ा और स्पष्ट है। – devstuff
की तरह तो:
HttpWebResponse response;
int code = (int) response.StatusCode;
कोड
HttpStatusCode.TemporaryRedirect
HttpStatusCode.TemporaryRedirect एक 307 है। Http://www1.cs.columbia.edu/~lok/csharp/refdocs/System.Net/types/HttpStatusCode.html#TemporaryRedirect –
अब मैं रिस्पॉन्स कोड देख सकता हूं, लेकिन यह अभी भी रीडायरेक्ट करता है और मुझे 'ओके' देता है –
@ नाथन टेलर: मैंने कर्ल-आई "यूआरएल" –
वीबी नेट कॉड ई
Function GetRealUrl(someUrl As String) As String
Dim req As HttpWebRequest = TryCast(WebRequest.Create(someUrl), HttpWebRequest)
req.AllowAutoRedirect = False
Dim response As HttpWebResponse = TryCast(req.GetResponse(), HttpWebResponse)
If response.StatusCode = HttpStatusCode.Redirect OrElse response.StatusCode = HttpStatusCode.MovedPermanently Then
' Do something...
Dim newUrl As String = response.Headers("Location")
getrealurl = newUrl
Else
getrealurl = someUrl
End If
End Function
.NET के लिए? जावा? MSX? –
WebRequest एक .NET क्लास है। – jimyi
असल में टैग कोड के बारे में सबकुछ कहते हैं। – Tarik