1
最初は私はASPの初心者です。 asp.netチュートリアルでWeb APIを作成してください。 チュートリアル終了後(私は他のコードを追加しませんでした)、Apiをテストしようとすると、返されますunautherize 401。asp mvc web api return 401 unauthorized
私は
<authentication mode="None" />
と私は認証せずに私のAPI にアクセスする方法をWebApiCOnfig.cs
config.Filters.Add(new HostAuthenticationFilter(OAuthDefaults.AuthenticationType));
で私のWeb.configファイルに以下の行を見つけましたか?あなたのテストを完了したら、それは簡単なテストとそのcotroller
[AllowAnonymous] // Applies to all ations
public class MyController : ApiController {
public IHttpActionResult MyAction1() {
//...
}
public IHttpActionResult MyAction2() {
//...
}
}
または唯一の意図したアクション
public class MyController : ApiController {
[AllowAnonymous] // Applies to only this ation
public IHttpActionResult MyAction() {
//...
}
//Still secure
public IHttpActionResult MyAction2() {
//...
}
}
上の上のすべてのアクションのために意図され、コントローラ上の任意の認証
目的のコントローラーまたはアクションでグローバル/コントローラー/アクションの認証フィルターまたは属性を削除するか、[AllowAnonymous]属性を使用します。 – Nkosi
config.Filters @Nkosiにコメントします。 [AllowAnonymous]はどこに追加しますか? – Ashkan
いいえ、それはどちらか一方です。とにかく属性を使用している場合は、コントローラー内のすべてのアクションに適用するか、アクションのみのアクション自体に適用することができます。 – Nkosi