От клиента было обнаружено потенциально опасное значение Request.Form - PullRequest
11 голосов
/ 08 января 2011

Я использую CKEditor / CKFinder в качестве редактора wysiwyg на моем сайте MVC.NET.

Я установил [ValidateInput(false)], и он работает при локальной отладке, но я получаю следующую ошибку при публикации сайта:

A potentially dangerous Request.Form value was detected from the client (message="<p>
<em>Testing</e...").

Может кто-нибудь объяснить, почему опубликованный сайтотличается от локального сайта, особенно когда я установил [ValidateInput(false)]?

* Обновление: * Я использую .Net 3.5, поэтому не должен [ValidateInput(false)] работать без коробки?

Ответы [ 5 ]

25 голосов
/ 18 января 2011

Вы пытались установить свойство htmlEncodeOutput?

> CKEDITOR.replace('editor1', {
>   htmlEncodeOutput: true });

Это должно закодировать вывод, и вы сможете избежать установки параметра requestValidationMode.

Документация для него находится здесь: Документация ckEditor

7 голосов
/ 08 января 2011

Добавьте это к своему web.config:

<httpRuntime requestValidationMode="2.0" />
0 голосов
/ 26 октября 2018

Добавить ValidateRequest="false" на свою страницу:

<%@ Page Language="C#" AutoEventWireup="false" Codebehind="MyForm.aspx.cs" Inherits="Proj.MyForm" ValidateRequest="false"%>

Или добавьте в web.config при использовании .NET Framework 4.0 (Visual Studio 2010)

<httpRuntime requestValidationMode="2.0" />
0 голосов
/ 25 июля 2018

ValidateRequest = "false" Добавить это на определенной странице.

Пример:

0 голосов
/ 06 сентября 2017

Просто добавьте аннотацию к действию метода Post как [ValidateInput (false)] *

[HttpPost]
    [ValidateAntiForgeryToken]
    [ValidateInput(false)]
    public ActionResult Detail(ModelClass m)
    { return View(); }
...