4
我已經使用OpenRasta構建了一項服務。我正在驗證操作攔截器中的資源。如果驗證失敗,則以ErrorResource返回BadRequest作爲JSON。 ErrorResource包含錯誤消息列表。在我的本地機器上,ErrorResource以JSON格式正確返回。響應內容類型是application/json。在我們的測試環境中,服務使用BadRequest響應,但內容類型爲text/html。錯誤消息的列表不會被返回。相反,響應包含消息「錯誤的請求」。任何想法爲什麼發生這種情況?OpenRasta壞請求不會返回爲JSON
這裏是攔截器的簡化版本:
public override bool BeforeExecute(IOperation operation)
{
var errorResource = new ErrorResource();
errorResource.AddErrorMessage("Error!");
_communicationContext.OperationResult = new OperationResult.BadRequest() { ResponseResource = errorResource };
return false;
}
下面是配置的簡化版本:在IIS
using (OpenRastaConfiguration.Manual)
{
ResourceSpace.Has
.ResourcesOfType<ErrorResource>()
.WithoutUri
.AsJsonDataContract();
ResourceSpace.Uses.CustomDependency<IOperationInterceptor, InputValidationInterceptor>(DependencyLifetime.Transient);
}
您可以發佈您的配置代碼片斷,其中顯示瞭如何配置ErrorResource?還發布你的攔截器? – taylonr
我已經添加了上面的相關代碼。就像我說的那樣,它可以在我的機器上運行:-)但是不在我們的測試環境中:-( – JuniorDeveloper