【发布时间】:2020-03-27 20:56:06
【问题描述】:
对于 Jwt 令牌:
HttpResponseMessage responseMsg
var token = responseMsg.Content?
.ReadAsStringAsync()
.GetAwaiter()
.GetResult();
用于授权发帖请求,像这样:
client.BaseAddress = new Uri("https://...");
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
client.DefaultRequestHeaders.Add("Authorization", $"Bearer {token}");
我收到此错误:
承载未通过身份验证。失败信息:否 SecurityTokenValidator 可用于令牌:“eyJ...”
仔细查看邮递员中的请求后,我发现问题是添加到标头上的令牌中的“”:
这就是我这样添加令牌的原因:
client.DefaultRequestHeaders.Add("Authorization", $"Bearer {token.Replace("\"", "")}");
这有效,但对我来说似乎“肮脏”。有没有更好的办法?
【问题讨论】:
-
您能否分享更多关于创建令牌的信息,您似乎正在将其检索到共享代码的范围之外
-
@Juanito 信息已添加
标签: asp.net-core-2.2 bearer-token jwt-auth