2011-06-23 8 views
4

OpenRastaを使用してサービスを構築しました。私は操作インターセプタのリソースを検証しています。検証に失敗した場合、JSONとしてErrorResourceとともにBadRequestが返されます。 ErrorResourceには、エラーメッセージのリストが含まれています。私のローカルマシンでは、ErrorResourceがJSON形式で正しく返されます。応答のコンテンツタイプはapplication/jsonです。私たちのテスト環境では、サービスはBadRequestで応答しますが、コンテンツタイプはtext/htmlです。エラー・メッセージのリストは戻されません。代わりに、応答にはメッセージ "Bad Request"が含まれています。これがなぜ起こっているのか?ここでOpenRastaの悪い要求がJSONとして返されない

は迎撃の簡易版です:IISで

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

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

ErrorResourceの設定方法を示す設定スニペットを投稿できますか?インターセプタも投稿してください。 – taylonr

+0

上記の関連コードを追加しました。私はそれが私のマシン上で動作すると言ったように:-)私たちのテスト環境ではない:-( – JuniorDeveloper

答えて

4

無効にエラーページ:ここ

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

    errorResource.AddErrorMessage("Error!"); 

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

    return false; 
} 

は、設定の簡易版です。メーリングリストのメールにいくつかの情報があります。 http://groups.google.com/group/openrasta/browse_thread/thread/50ac9048d8e4a77e/4977aab1334a3e60?#4977aab1334a3e60

関連する問題