從客戶端檢測到潛在危險的Request.Form值每當用戶在我的Web應用程序中發布包含<或>在頁面中的內容時,我都會拋出此異常。我不想進入關于拋出異?;虮罎⒄麄€Web應用程序的聰明性的討論,因為有人在文本框中輸入了一個字符,但我正在尋找一種優雅的方法來處理這個問題。捕獲異常并顯示發生錯誤請返回并重新輸入整個表單,但這次請不要使用<對我來說似乎不夠專業。禁用post validation(validateRequest="false")肯定會避免此錯誤,但它會使頁面容易受到許多攻擊。理想情況:當發回包含HTML限制字符的回發時,Form集合中的已發布值將自動進行HTML編碼。所以.Text我的文本框的屬性將是something & lt; html & gt;有沒有辦法可以從處理程序中執行此操作?
4 回答

ibeautiful
TA貢獻1993條經驗 獲得超6個贊
如果您使用的是.NET 4.0,請確保將其添加到標記內的web.config文件中<system.web>
:
<httpRuntime requestValidationMode="2.0" />
在.NET 2.0中,請求驗證僅應用于aspx
請求。在.NET 4.0中,這擴展到包括所有請求。您可以通過指定以下內容恢復為僅在處理時執行XSS驗證.aspx
:
requestValidationMode="2.0"
您可以通過指定完全禁用請求驗證:
validateRequest="false"
- 4 回答
- 0 關注
- 737 瀏覽
添加回答
舉報
0/150
提交
取消