創新易聯歡迎您!13年專注深圳網站建設

表單提交檢測到有潛在危險request.form值,該如何應對?

日期:2019-05-22 | 來源:易聯網站建設公司 | 閱讀:

網頁表單制作完成提交表單時:從客戶端中檢測到有潛在危險的 request.form值,當頁面編輯或運行提交時,出現“從客戶端中檢測到有潛在危險的request.form值”問題,該怎么辦呢?今天易聯小編就和大家講解下應對方法:


問題原因:由于在asp.net中,Request提交時出現有html代碼或javascript等字符串時,程序系統會認為其具有潛在危險的值。環境配置會報出“從客戶端 中檢測到有潛在危險的Request.Form值”這樣的Error。


1、當前提交頁面,添加代碼

打開當前.aspx頁面,頁頭加上代碼:validateRequest=”false”,如:


《%@ Page Language="C#" ValidateRequest="false" AutoEventWireup="false" CodeFile="default.aspx.cs" Inherits="default" %》2、全局修改web.config配置文件(此舉不建議、不安全)

打開web.config文件,在《system.web》《/system.web》中間,加上如下代碼:


《pages validateRequest="false" /》如果以上兩種方法都無法解決,請接著往下看,


前面兩種方法失效的原因:由于你當前的.net ifreamwork框架環境是4.0。因為4.0的驗證在HTTP的BeginRequest前啟用,因此,請求的驗證適用于所有ASP.NET資源,aspx頁面,ashx頁面,Web服務和一些HTTP處理程序等.


3、同樣,打開web.config配置文件,在《system.web》《/system.web》中間,加上代碼:


《httpRuntime requestValidationMode="2.0" /》4、如果你的網站程序本身是net 2.0環境開發的,但放到了VS2010軟件里運行,也會出現這種情況,你可以把運行解決方案切換成net2.0即可,更換方法詳見頁面第3步:點擊進入


5、另一種處理方法:原因是所傳值含有特殊危險符號,那么可以在傳前,利用Server.HtmlEncode(string)方法,對字符串進行編碼,這樣就會將危險字符轉義為普通的字符。如TextBox1.Text=Server.HtmlEncode(str);


—— 微信公眾號 ——

熱門標簽

急速赛车单机版