c# - ASP.NET Core JWT 令牌无法通过 HttpClient 工作
问题描述
我是 JWT 身份验证的新手,我已经使用此处的教程配置了我的 ASP.NET Core 3 API 以进行令牌身份验证:
我已将[Authorize]
属性添加到控制器,并且使用 Postman 我可以登录并获取令牌,并通过 Postman 使用令牌从控制器检索数据 - 一切都按预期工作。
我的问题是,当我HttpClient
通过 Xamarin 应用程序使用 C# 登录,然后使用发回的令牌时,通过 Postman 或HttpClient
.
我正在使用的代码如下:
var client = new HttpClient();
var model = new JwtLoginModel()
{
Email = email,
Password = password,
RememberMe = false
};
var json = JsonConvert.SerializeObject(model);
HttpContent httpContent = new StringContent(json);
var response = await client.PostAsync(Constants.BaseApiAddress + "api/Login", new StringContent(json, Encoding.UTF8, "application/json"));
var content = await response.Content.ReadAsStringAsync();
JObject jwtDynamic = JsonConvert.DeserializeObject<dynamic>(content);
var accessToken = jwtDynamic.Value<string>("token");
使用accessToken
通过 Postman返回HttpClient
的(和),两者都返回 401 错误。
谁能建议我做错了什么?
解决方案
谢谢大家的帮助
最后,我决定使用运行良好的 Identity Server 4 实现更容易
推荐阅读
- scala - 当并行运行时,折叠和减少显示不确定的行为,为什么?
- laravel - 是否可以在 Laravel Redirect Back with-> Message 中传递多条消息
- r - R计算多个组中出现的重复项目
- c++ - 有没有办法在 C++ 的枚举中存储静态指针地址
- r - 如何使用 dplyr 检测面板数据中变量随时间的变化?
- firebase - 隐藏 Firebase 托管上的敏感数据
- nginx - Nginx ProxyPassReverse 设置
- python - 使用 py2neo 连接 Neo4j Aura 云数据库
- javascript - 在 div contenteditable 内自由移动图像
- java - 无法从 Spring Cloud Config Server 获取值到我的 Config-Client(limits-service)