asp.net中提交表单数据时提示从客户端(。。。)中检测到有潜在危险的 Request.Form 值...
?
看到這個圖是不是很親切熟悉哈,做過。net的肯定都見過哈
已經 將近4年沒碰。net了,今天正好朋友的程序有幾個bug,讓我幫忙修復下,于是我就抱著試試看的心情改了改,改到最后一個問題的時候也就是上面的這個問題,我一看,這不很明顯么
在出現該錯誤的頁面頭部的page中加入ValidateRequest="false",那么該頁面的任何一次Post提交都不會再驗證提交內容的安全性。
如:
ValidateRequest="false"?%?> 就像上圖 加個? ?ValidateRequest="false"就完事 我去竟然還不好使,然后我百度 百度說要在web.config中設置,于是我又在web.config里設置 <pages validateRequest="false" controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/> 感覺可以了,我去,竟然還不行 有鬼啊。。不太科學啊,再百度把 發現了 以下這些
如果你使用的是.Net?3.5,MVC?2.0及更高的版本,那么可以在處理Post方法的Action添加一個特性:[ValidateInput(false)],這樣處理就更加有針對性,提高頁面的安全性。
如:
[ValidateInput(false)]
public?ActionResult?CatalogEdit(Catalog?model)
{
return?View();
}
重要:
如果你使用的是MVC?3.0,那么你會發現做了以上的設置后還是無效。這是因為你還需要在web.config中做以下設置:
<httpRuntime?requestValidationMode="2.0"?/?>
</system.web?>
注意:在MVC項目中,Views文件夾下與主項目下,都會有一個web.config文件。Views下的web.config文件只對Views文件夾下面的文件有效。如果你要處理的頁面不在Views下面,那么<httpRuntime?requestValidationMode="2.0"?/?>一定要設置在主項目下的web.config中才有用。
?
最后還是紅色字體幫助了我,我看了項目確實是mvc3 還是個比較低的版本
轉載于:https://www.cnblogs.com/HoverM/p/10080269.html
總結
以上是生活随笔為你收集整理的asp.net中提交表单数据时提示从客户端(。。。)中检测到有潜在危险的 Request.Form 值...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 支付宝还信用卡自动还款注意事项!做好这些
- 下一篇: Asp.Net Core 工作单元 Un