تعطيل ADBLOCK

يمنع ADBlock بعض المحتوى على الموقع

ADBlock errore
العثور على نتائج: 

سؤال

وأنا تنفيذ HttpRequestValidationException في بلدي Application_Error معالج، وإذا أمكن، أريد لعرض رسالة مخصصة.

والآن، أنا أفكر في StatusCode. في بلدي على سبيل المثال الحالي، فإنه يرسل 200، الذي أعتقد أنه لا ينبغي القيام به. وأود أن ترسل (IMHO) أكثر ملاءمة 400 طلب غير صحيح بدلا من ذلك. ومع ذلك، في نفس الوقت، أود أن استخدام Response.Write لإدخال رسالة مخصصة. فايرفوكس يعرض بشكل صحيح، ولكن IE7 يعطيني افتراضي غير مفيدة انترنت اكسبلورر خطأ في الصفحة.

في جانب واحد، وأعتقد أن Internet Explorer فقط يفترض أن كل شيء <> 200 هو ببساطة عدم وجود أي محتوى "جيدة"، وفي RFC ليس واضحة حقا هنا.

وحتى أنا فقط أتساءل، وإرسال HTTP 200 لصفحة خطأ الناجم عن الممارسات الجيدة HttpRequestValidationException أم لا؟ هل هناك بدائل جيدة؟

المحلول

ورمز استجابة HTTP 200 لا تشير إلى وجود خطأ. فإنه يشير إلى أن كل شيء على ما يرام. يجب عدم استخدام رمز 200 استجابة للخطأ.

ويظهر إنترنت إكسبلورر في "أخطاء ودية" الصفحة إذا كان الرد هو أقل من 512 بايت. هنا أكثر على هذه المشكلة: HTTP: //weblogs.asp. صافي / scottgu / أرشيف / 2006/04/09 / 442332.aspx و

إذا أردت ، اترك لنا رأيك

هل كانت المقالة مفيدة وهل تمت ترجمتها بشكل صحيح؟

نصائح أخرى

لا، انها ليست بالتأكيد ممارسة جيدة. رموز الحالة 2XX تعني (من بين أمور أخرى) أن الطلب على صالح . الذي هو مجرد مخالفة للتربية HttpRequestValidationException.

وأنا لا أعرف كيف لجعل IE تتصرف بشكل صحيح، للأسف. وهناك طريقة أفضل قليلا من إرسال 200 يكون لإعادة توجيه إلى صفحة خطأ، ولكن لا تزال بعيدة عن الكمال.

يظهر

وإنترنت إكسبلورر ما يسمونه "رسالة خطأ HTTP صديقة" عندما يكون الرد هو 4xx او 5xx. يمكن إيقاف تشغيل هذا الخيار من قبل المستخدم في الحوار IE في Tools.Options.Advanced [التصفح].

وإرسال 200 لصفحة الخطأ بشكل عام ممارسة سيئة. ومن البدائل لديك صالح "خطأ" صفحة هذا <م> من المفترض لإظهار رسائل الخطأ (حتى 200 سيكون بخير) ومن ثم استخدام 3xx إعادة توجيه إلى تلك الصفحة.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow