这是我第一次在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个未经授权的错误.

我希望它能帮助别人;)

Asp.net相关问答推荐

ASP.NET MVC forEach 循环仅返回 1 个值

如何在 asp.net 服务器中使用字体

WebResource.axd 上的填充无效且无法删除异常

为什么微软决定支持 jQuery 如此重要?

使用 Owin 身份验证的服务器端声明缓存

在 Asp.net 中通过 Button 的 CommandArgument 传递多个参数

Web.config 导致被组策略阻止错误

c# - 如何从列表中获取值的总和?

无法加载文件或程序集'System.Web.WebPages.Razor,版本 = 3.0.0.0

如何在 ASP.NET MVC3 中配置区域

如何从 SQL Server 2008 本身获取客户端 IP 地址?

使用 LINQ 进行递归控制搜索

存在 ios 7 虚拟键盘时,div 元素不会停留在底部

在asp.net控件之间动态添加

如何获取正在访问 ASP.NET 应用程序的当前用户?

MVC3 值 Ajax 文件上传

如何在 ASP.Net MVC 3 中返回 HttpNotFound() 的视图?

在 ASP.NET MVC 中模拟 User.Identity

为什么 Controls 集合不提供所有 IEnumerable 方法?

中继器中的中继器