A potentially dangerous Request.Path value was detected from the client異常解決方案


場景:

當URL中存在“<,>,*,%,&,:,/”特殊字符時,頁面會拋出A potentially dangerous Request.Path value was detected from the client異常。

 

原因:

是ASP.NET默認的攔截機制,保證頁面URL傳輸的一定安全性。

 

解決方案有兩種:

第一種,直接去除頁面請求危險字符驗證:

在web.config配置文件的<system.web>節點下添加代碼如下:

1 <system.web>
2    <httpRuntime requestValidationMode="2.0"/>
3    <pages validateRequest="false" clientIDMode="AutoID"/>
4 </system.web>

 

第二種,設置哪些危險字符需要被驗證:

1 <system.web>
2     <httpRuntime requestPathInvalidCharacters="&lt;,&gt;,*,%,:,&amp;,/" />
3 </system.web>

注意其中的requestPathInvalidCharacters是一個以逗號分隔的無效字符列表。默認不存在此鍵值對時,意味着受限制的無效字符集(以,分割)是這7個:<,>,*,%,&,:,/

如果你想這些字符全部不受限制,就應該設置requestPathInvalidCharacters="";

如果你想部分字符受限制,就需要在requestPathInvalidCharacters中設置需要受限制的字符;例如:requestPathInvalidCharacters="<,>"。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM