3

我提供了一个简单的测试服务,现在客户发布了一个被认为是危险的有效负载,因此 httpRequestValidation 失败。

我试图像在 MVC 中那样停用 HTTPValidation

  <pages validateRequest="false">

但这无济于事。我必须为 ServiceStack 设置什么特别的东西吗?

异常详情:

System.Web.HttpRequestValidationException 发生
HResult=-2147467259 Message=Ein möglicherweise gefährlicher Request.Form-Wert wurde vom Client (payload="... foo@mail.com...") entdeckt。Source=System.Web ErrorCode=-2147467259 WebEventCode=0 StackTrace: bei System.Web.HttpRequest.ValidateString(String value, String collectionKey, RequestValidationSource requestCollection)
InnerException:

有什么提示吗?

4

1 回答 1

3

ServiceStack 本身不添加任何请求验证,因此这可能是 ASP.NET 验证限制。有关更多详细信息,请参阅此答案

要禁用请求验证,请确保您已将两者都添加到 Web.config:

<httpRuntime requestValidationMode="2.0"/>

<configuration>
    <system.web>
        <pages validateRequest="false" />
    </system.web>
</configuration>
于 2013-06-18T14:32:27.677 回答