C# ASP.NET Core 3.1没有';不授权持票人代币
我将C# ASP.NET Core 3.1没有';不授权持票人代币,c#,asp.net-core,asp.net-core-3.1,C#,Asp.net Core,Asp.net Core 3.1,我将[Authorize(Roles=“CompanyRole”)]注释添加到我的控制器操作中,在启动类中,我有: app.Use(async (context, next) => { if(context.Session.GetString("user") != null) { var tk = JsonConvert.DeserializeObject<UserModel>(co
[Authorize(Roles=“CompanyRole”)]
注释添加到我的控制器操作中,在启动
类中,我有:
app.Use(async (context, next) =>
{
if(context.Session.GetString("user") != null)
{
var tk = JsonConvert.DeserializeObject<UserModel>(context.Session.GetString("user"));
if (!String.IsNullOrEmpty(tk.Token))
{
context.Request.Headers.Add("Authorization", "Bearer " + tk.Token);
}
await next.Invoke();
}
else
{
context.Request.Path = "/Home/Login";
await next.Invoke();
}
});
其中一个角色是
CompanyRole
,但是当我试图执行控制器操作时,我得到了一个“未经授权”的消息 > P>在中间件Stutu.CS文件中,应考虑中间件的优先级并登记您的中间件。
app.Use(async (context, next) =>
{
if(context.Session.GetString("user") != null)
{
var tk = JsonConvert.DeserializeObject<UserModel>(context.Session.GetString("user"));
if (!String.IsNullOrEmpty(tk.Token))
{
context.Request.Headers.Add("Authorization", "Bearer " + tk.Token);
}
await next.Invoke();
}
else
{
context.Request.Path = "/Home/Login";
await next.Invoke();
}
});
app.UseAuthorization();
app.Use(异步(上下文,下一步)=>
{
if(context.Session.GetString(“用户”)!=null)
{
var tk=JsonConvert.DeserializeObject(context.Session.GetString(“用户”));
如果(!String.IsNullOrEmpty(tk.Token))
{
context.Request.Headers.Add(“授权”、“承载者”+tk.Token);
}
等待next.Invoke();
}
其他的
{
context.Request.Path=“/Home/Login”;
等待next.Invoke();
}
});
app.UseAuthorization();
app.Use(async (context, next) =>
{
if(context.Session.GetString("user") != null)
{
var tk = JsonConvert.DeserializeObject<UserModel>(context.Session.GetString("user"));
if (!String.IsNullOrEmpty(tk.Token))
{
context.Request.Headers.Add("Authorization", "Bearer " + tk.Token);
}
await next.Invoke();
}
else
{
context.Request.Path = "/Home/Login";
await next.Invoke();
}
});
app.UseAuthorization();