1

n00b の質問で申し訳ありませんが、これに関する情報は散発的でした。私は MVC Web API を使用して API を作成しており、ここで選択された回答で説明されているようにフォーム認証を使用しています: ASP.Net MVC 4 WebAPI 認証

予想どおり、認証 Cookie はログイン時の応答ヘッダーで送信されます。ただし、この後に [Authorize] で装飾されたメソッドを試すと、リクエストには確かにヘッダーに認証 Cookie が含まれているように見えますが、毎回 HTTP 401 が返されます。

私が読んだソースは、それがほとんど自明であるはずであることを示しているので、実際にこれをデバッグする方法がわかりません. 認証方法が実際に機能することを確認するにはどうすればよいですか?

4

2 に答える 2

4

私も同じ問題を抱えていました。Web.Config最終的に、ファイルでフォーム認証を有効にするのを忘れていたことに気付きました。モードを「なし」から「フォーム」に変更すると、問題が修正されました。

<system.web>
    <authentication mode="Forms" />
</system.web>
于 2012-12-07T10:00:47.037 に答える
0

そのため、最終的にはフォーム認証を無視して、HTTP Basic Auth に行きました。

これにはいくつかの理由があります - クライアント (安全なネットワークを介して SSL 経由で接続する) にとって、実装はより簡単でした。また、Web API と MVC4 を初めて使用する私のような人のために、より適切に文書化されていました。

これに関する優れたチュートリアルは、
http ://www.piotrwalat.net/basic-http-authentication-in-asp-net-web-api-using-message-handlers/ にあります。

于 2012-11-27T12:55:31.597 に答える