私のMvc Apiコントローラで、ユーザーが認証できない場合は、HttpException 401を投げます。しかしRestSharpクライアントはこれをHttp 500ステータスコードに変換しているようです。RestSharpクライアントに401認証エラーを返すにはどうすればよいですか?
私のMvcコントローラからHttpExceptionsをスローし、RestSharpクライアントがStatusCodeプロパティで元のエラーを保持できるようにしたいとします。
また、サーバーが起動していない場合、RestSharpクライアントが要求を出したとき、応答のステータスコードが0、応答コードがErrorの場合があります。 RestSharpは代わりに404 httpエラーコードを返さないのですか?
私が本当に必要とするのは、RestSharpがHttpCodesでどのように動作するかに関するドキュメントです。私のAPIコントローラにコードを更新しました
:
throw new HttpException((int)HttpStatusCode.Unauthorized, AuthenticationError);
Right @ jaffa、これはMVC 4の受け入れられた答えになるはずです。でも、401を返すために何かをダウンロードしなければならないのはどうですか?ばかばかしい。私のちょっとした回避策は、403 Forbiddenを送信することです。 (私の答えを見てください)。 – Rap