OpenRasta错误请求不会返回JSON

时间:2011-06-23 15:03:15

标签: openrasta

我使用OpenRasta构建了一个服务。我正在验证操作拦截器中的资源。如果验证失败,则返回BadRequest,并将ErrorResource作为JSON。 ErrorResource包含错误消息列表。在我的本地计算机上,ErrorResource以JSON格式正确返回。响应内容类型是application / json。在我们的测试环境中,服务以BadRequest响应,但内容类型为text / html。不返回错误消息列表。而是响应包含消息“错误请求”。任何想法为什么会发生这种情况?

以下是拦截器的简化版本:

public override bool BeforeExecute(IOperation operation)
{
    var errorResource = new ErrorResource();

    errorResource.AddErrorMessage("Error!");

    _communicationContext.OperationResult = new OperationResult.BadRequest() { ResponseResource = errorResource };

    return false;
}

以下是配置的简化版本:

using (OpenRastaConfiguration.Manual)
{
    ResourceSpace.Has
        .ResourcesOfType<ErrorResource>()
        .WithoutUri
        .AsJsonDataContract();

    ResourceSpace.Uses.CustomDependency<IOperationInterceptor, InputValidationInterceptor>(DependencyLifetime.Transient);
}

1 个答案:

答案 0 :(得分:4)

在IIS中禁用错误​​页面。邮件列表中的电子邮件中有一些信息。见http://groups.google.com/group/openrasta/browse_thread/thread/50ac9048d8e4a77e/4977aab1334a3e60?#4977aab1334a3e60