2012-03-13 19 views
0

私は新しいMVC 4 Beta Web APIを使用しています。サーバーからデータを取得する前にユーザーが自分自身を認証するようにするには、Getアクションに[Authorize]属性を追加します。私はアクションをテストするためにfiddlerを使用していますが、web.configで定義されているLogin Urlにリダイレクトされています。私は[System.Web.Http.Authorize]を使用して[Authorize]属性を追加しています。Web APIリクエスト - 認証リクエストの返信

答えて

1

フォーム認証モジュールがWeb APIから返された401 HTTPステータスコードをハイジャックし、ログインページにリダイレクトするためです。 Phil HaackがAJAX要求に対してこれを行わないようにASP.NETを設定する方法について話し合っているfollowing blog postを見てください。コードを少し修正して、すべてのリクエストに対して、またはApiコントローラに対するリクエストに対してのみ行うことができます。

+0

このソリューションをNuGet経由でインストールした後も、まだLogin Redirect Urlに送信されましたが、ログインを示す200の代わりに、リダイレクト後にコントローラが見つからないというエラーが表示されました。 – bdparrish

0

私のAPIで動作させるには、web.configから認証セクションを削除し、WCF WebApiコードから変換して書きました)メッセージハンドラを書きました。私がやったことをblog postに入れました。

関連する問題