سؤال

هل هناك asp.net بنيت في الآلية التي يمكن تطهير جميع مدخلات النص بدلا من إعادة توجيه إلى صفحة الخطأ؟

ولدي إدخال النص حيث يمكن للمستخدم إدخال اسم، ولكن اذا حاولوا دخول والعلامات <> الصفحة يلقي تلقائيا خطأ. أريد فقط أن التعامل مع هذا الخطأ بطريقة سهلة الاستعمال.

هل كانت مفيدة؟

المحلول

ويمكنك استخدام السيطرة RegularExpressionValidator ASP.NET مع نمط مثل: ^[^<>]*$

<asp:RegularExpressionValidator ID="rev" runat="server"
    ControlToValidate="txtBox"
    ErrorMessage="The <> tags are not allowed!"
    ValidationExpression="[^<>]*" />
<asp:RequiredFieldValidator ID="rfv" runat="server" ControlToValidate="txtBox" 
    ErrorMessage="Value can't be empty" />

RequiredFieldValidator بالتزامن مع RegularExpressionValidator لمنع إدخالات فارغة. إذا كان هذا النص هو اختياري، ويحتاج فقط ليتم التحقق من صحة عندما يتم إدخال شيء ما، ثم لم يكن لديك لاستخدام RequiredFieldValidator.

والاستفادة من فعل ذلك بهذه الطريقة هو أن الخطأ يمكن التعامل معها بأمان، ويمكن أن يتم إخطار المستخدم على نفس الصفحة.

ولكن، إذا كنت تحتاج إلى القيام بذلك للعديد من مربعات النص وكنت ترغب فقط في تقديم شيء أجمل من صفحة الخطأ، هل يمكن معالجة الخطأ ValidateRequest لتقديم رسالة ودية والحفاظ على المستخدم على نفس الصفحة (وليس فقط استبدال مع صفحة خطأ مخصصة). لمزيد من المعلومات، راجع آخر كيرك إيفانز ': معالجة الأخطاء ValidateRequest ضمن الصفحة (راجع الجزء الموجود بعنوان تجاوز الأسلوب OnError).

نصائح أخرى

وأنت تريد أن ننظر إلى AntiXSS مكتبة لل أن. انها دلل ذلك فمن السهل أن يسقط في والبدء في استخدامه.

ووالتنزيل على كود بلاكس .

وقراءة هذه لخطوة خطوة: <لأ href = "http://yourtahir.wordpress.com/2008/03/28/aspnet-not-allow-html-in-text-boxserver-error- ، تم الكشف، في تطبيق واحد في potentialy الخطرة-requestform القيمة / "يختلط =" نوفولو noreferrer "> http://yourtahir.wordpress.com/2008/03/28/aspnet-not-allow-html- ، تم الكشف في والنص boxserver الخطأ في التطبيق واحد في potentialy الخطرة-requestform القيمة /

لديك للقيام ببعض الأعمال الملف web.config.

وASP.net ديه تحكم التحقق من الصحة

[ http://msdn.microsoft.com/ أون لنا / مكتبة / 7kh55542.aspx] [1]

وأيضا هناك الأقسام أسفل محرر وهي الرقابة التي يستبعد علامات HTML وغيرها.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top