这是我第一次在ASP.NET Core中创建授权. 我用了这里的教程TUTORIAL
问题是当我发送postman 的请求时:
Authorization:Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6I...
添加到用[Authorize]属性修饰的控制器中的我的方法.
我总是收到401 Unauthorized
...我在那个教程下面看到了 comments ,似乎有些人也有类似的问题.我不知道怎样才能解决这个问题.
这是我第一次在ASP.NET Core中创建授权. 我用了这里的教程TUTORIAL
问题是当我发送postman 的请求时:
Authorization:Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6I...
添加到用[Authorize]属性修饰的控制器中的我的方法.
我总是收到401 Unauthorized
...我在那个教程下面看到了 comments ,似乎有些人也有类似的问题.我不知道怎样才能解决这个问题.
应其他人的要求,以下是答案:
问题在于启动时的中间件顺序.反恐精英
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
ConfigureAuth(app); // your authorisation configuration
app.UseMvc();
}
为什么秩序很重要?如果我们先输入app.UseMvc()
,那么MVC操作将进入路由,如果他们看到Authorize属性,他们将控制其处理,这就是为什么我们会收到401个未经授权的错误.
我希望它能帮助别人;)