رسالة الخطأ "تم حاول الكثير من إعادة توجيه التلقائي" عند استخدام httpWebRequest في NET.
-
21-08-2019 - |
سؤال
وأنا محاولة لطلب صفحة مثل " http://www.google.com/؟q = عشوائي "باستخدام الفئة webRequest في vb.net. نحن وراء جدار الحماية، لذلك لدينا لمصادقة طلباتنا. لقد حصلت في الماضي جزءا المصادقة بإضافة أوراق اعتمادي. ولكن بمجرد أن يعمل على ما يبدو للذهاب إلى حلقة إعادة توجيه.
هل لديها أفكار والتعليقات، suggetions لماذا يحدث هذا؟ وقد أي شخص آخر من ذوي الخبرة هذه المشكلة؟
Dim loHttp As HttpWebRequest = CType(WebRequest.Create(_url), HttpWebRequest)
loHttp.Timeout = 10000
loHttp.Method = "GET"
loHttp.KeepAlive = True
loHttp.AllowAutoRedirect = True
loHttp.PreAuthenticate = True
Dim _cred1 As NetworkCredential = ... //this is setup
//snip out this stuff
loHttp.Credentials = _cc
loWebResponse = loHttp.GetResponse()
المحلول
تأكد من حصولك على الإعداد حاوية الكعكة.
CookieContainer cookieContainer = new CookieContainer();
loHttp.CookieContainer = cookieContainer;
وأنت ربما لا إنقاذ الكوكيز والوقوع في حلقة إعادة توجيه.
نصائح أخرى
loHttp.AllowAutoRedirect = true
وبدلا من ذلك، لديك لاستخدام
loHttp.AllowAutoRedirect = False
ولتجنب الخطأ خطأ
<اقتباس فقرة>و"REDIRECTION AUTOMATIC TOO العديد منهم حاول"
اقتباس فقرة>وقمت بترجمة C # التي قدمت داريل إلى VB وإدراجها قبل استدعاء getResponse.
Dim cookieContainer As CookieContainer = New CookieContainer()
loHttp.CookieContainer = cookieContainer
loWebResponse = loHttp.GetResponse()
وربما، يمكنك معالجة فردية لكل إعادة توجيه من قبل اللحاق الموقع من الاستجابة واستخدام الكوكيز مناسبة.