0
私たちの問題は以下の通りです:ProtoBufFormatterをWeb APIに使用しています。また、当社のカスタム承認属性を使用してWeb API - ProtoBufFormatter - カスタムAuthorize属性でシリアル化可能な401を返します
config.Formatters.Add(new ProtoBufFormatter());
。弊社のWeb APIがいるProtobuf投げ、それが応答をシリアル化することができないとして、例外が発生し401を返しているときに問題があるので、次の例外スロー:
タイプが定義されていませんシリアライザ:System.Objectの
をprotected override void HandleUnauthorizedRequest(HttpActionContext actionContext) { // base.HandleUnauthorizedRequest(actionContext); }
サーバは、これが401応答を送信することを防ぐように例外を投げる停止します。私はコメントアウト
。
しかし、私はこの問題に最善の対処方法を確認していません。
私はその後、私のコントローラのアクションで、ユーザーが不正であることを含んでいるProtobufシリアライズ可能な応答を返すべきでしょうか?次のように応答して、私たちのシリアライズ可能なコンテンツを返すことによって解決