2011-07-12 38 views
5

我知道這個主題有很多帖子,但是無論我多麼努力地嘗試(使用這樣的細節帖子)我不能完全從MVC 3無法禁用「......潛在危險的Request.Path ...」在MVC 3

刪除請求驗證通過一個醜陋的方式,但簡單的測試,我按照下列步驟操作: -

  1. 打開VS,創建一個新的樣本MVC3互聯網應用。
  2. 上面的每個我的控制器操作我已經放置了[ValidateInput(false)]屬性。
  3. 編輯根web.config,以便<httpRuntime requestValidationMode="2.0" />位於<system.web />部分。

雖然這現在意味着我可以在現場的東西提交表單像<script>,我仍然無法工作,如何讓Request.Paths如http://localhost/MySampleApp/Account/LogOn<script>

如果我打電話給這樣一個URL,我仍然得到「從客戶端檢測到潛在危險的Request.Path值(<)」。

有誰知道如何在.NET 4.0上真正刪除MVC 3中的所有請求驗證?

非常感謝,

回答

4

您可能會發現following blog post有用。我個人的建議是,以避免您的網址路徑中使用此類字符(除非絕對必要),並使用查詢字符串參數等數據發送到服務器:

http://localhost/MySampleApp/Account/LogOn?script=%3Cscript%3E 
+0

感謝這一點 - 澄清 - 我們需要這個完全禁用所以我們可以運行一個完整的應用程序Skipfish測試...目前它不能測試很多'錯誤的URL'的嘗試,因爲MVC的內置東西...我單純依靠.Net感到有點不舒服實施網址安全。 – isNaN1247

+0

夢幻般的鏈接! – isNaN1247

相關問題