dja*_*azz 5 c# access-token jwt asp.net-core asp.net-core-2.1
当我可以创建JWT时,这确实让我抓狂了。我可以添加一个属性来授权控制器,然后查看是否不向标题添加“ Authorization”“ Bearer(token)”,它将返回未经授权的401。但是,像获取令牌的字符串来获取其有效负载声明这样的简单操作不起作用。
所以这很好用:
var token = Request.Headers["Authorization"];
Run Code Online (Sandbox Code Playgroud)
这不是:
var token2 = await HttpContext.GetTokenAsync(JwtBearerDefaults.AuthenticationScheme, "access_token");
Run Code Online (Sandbox Code Playgroud)
我已经更改了签名,像这样在启动时连接了IHTTPContextAccessor:
services.AddSingleton<IHttpContextAccessor, HttpContextAccessor>();
Run Code Online (Sandbox Code Playgroud)
我可以看到IHttpContextAccessor具有值以及授权密钥。我本可以发誓过去在.NET Core 2.0中可以轻松工作,但现在却不行。我在“启动”或“程序”中是否缺少简单的连接?此时,我将仅从Request.Headers中获取数据。但这就像黑客一样。
| 归档时间: |
|
| 查看次数: |
3001 次 |
| 最近记录: |