2009-10-30 49 views
20

Đã yêu cầu xác thực thay đổi cho ASP.NET MVC 2, chính xác hơn, không xác nhận?Yêu cầu xác thực - ASP.NET MVC 2

tôi đã làm như sau:

Web.configs (trong App thư mục và thư mục xem)

<pages 
    validateRequest="false" 

Controller/Action Attribute

[ValidateInput(false)] 

Trong @Page Xem Chỉ thị

ValidateRequest="false" 

Trang vẫn được xác nhận một ngoại lệ được ném khi nội dung HTML được đăng.

CẬP NHẬT

Tạo một mới ASP.NET MVC 2 ứng dụng và tôi sửa đổi Index Home Kiểm Soát Tài Chính này

[ValidateInput(false)] 
    public ActionResult Index(string InputText) 
    { 
     ViewData["Message"] = "Welcome to ASP.NET MVC!"; 

     return View(); 
    } 

và Xem của tôi Trang

<% using(Html.BeginForm()){ %> 
    <%= Html.TextBox("InputText") %> 
    <input type="submit" /> 
<% } %> 

Và vẫn cùng một vấn đề , một ngoại lệ được ném.

Trả lời

31

tôi nên đọc các lỗi một cách cẩn thận hơn lần sau:

Để cho phép các trang ghi đè cài đặt xác nhận yêu cầu ứng dụng, bộ requestValidationMode = "2.0" trong phần cấu hình. Sau khi thiết lập giá trị này, bạn có thể vô hiệu hóa xác nhận yêu cầu của thiết ValidateRequest = "false"

tôi đặt này trong web.config của ứng dụng

<system.web> 
    <httpRuntime requestValidationMode="2.0" requestPathInvalidCharacters="" /> 
</system.web> 

và nó làm việc.

Cập nhật:

Tôi đã chạy ASP.NET 4 thats tại sao: P

+0

sẽ giúp cho biết chính xác vị trí của web.config bạn đặt nó ... – mare

+2

Bên trong '' thẻ bắt đầu/kết thúc – Omar

+0

điều này không hiệu quả đối với tôi, tôi phải sử dụng các thuộc tính cho MVC2 RTM –

2

Chèn cảnh báo bắt buộc về XSS tại đây.

đó bạn trang trí bộ điều khiển (hoặc hành động) với ValidateInputAttribute nên là đủ, như tất cả các xác nhận được thực hiện ở cấp bộ điều khiển này trong ASP.NET MVC

Tôi vừa cố gắng này ngay bây giờ trên một hành động, và nó trả về một cảnh báo tốt đẹp, xấu xa() khi tôi xuất nó, vì vậy tôi sẽ mạo hiểm đoán rằng có điều gì khác đang diễn ra ở đây.

Bạn có thiết lập HandleErrorAttribute ở bất kỳ đâu không?

+0

tôi thực hiện một phong tục ViewPage bạn có thể nhìn thấy ở http://stackoverflow.com/questions/1480373/generic-inhertied-viewpage -and-new-property, tìm kiếm xem liệu có bất kỳ điều gì gây ra nó để xác thực với ASP.NET MVC 2 – Omar

+0

Không thuộc tính HandleError hay không. – Omar

Các vấn đề liên quan