c# - API 控制器未正确返回 User.Identity 声明
问题描述
我有一个非常简单的 api 控制器方法,它应该返回登录用户的声明。当我调试应用程序时,claimIdentity.Claims 会正确显示声明数组。
但是当我在招摇或邮递员中测试时,我只会得到
Could not get any response
There was an error connecting to http://localhost:59215/api/v1/GetClaims.
接口方法:
[Route("GetClaims")]
[HttpGet]
[ProducesResponseType(typeof(IEnumerable<Claim>), StatusCodes.Status200OK)]
public IEnumerable<Claim> GetClaims()
{
var claimsIdentity = User.Identity as ClaimsIdentity;
return claimsIdentity.Claims;
}
所有其他 API 方法都可以正常工作。
解决方案
推荐阅读
- javascript - 发布时超出了最大调用堆栈大小
- android - 从硬件服务构建没有整个 aosp 的单个 android 服务
- azure - Azure 核心工具 - 如何在获取连接字符串时指定不同的键名
- keras - 如何使用 ktrain 包连接表格和文本数据?
- sql - 在oracle中通过查询将列转换为行
- android - getOrientation 函数返回的音高错误
- ruby-on-rails - RAILS:用外部约束截断和替换 postgres 表上的数据
- node.js - 是否可以将原生 Windows 窗口的实时图像嵌入/流式传输/投影到网页中?
- javascript - 在 Material-Table 中的 Azure Kubernetes 服务器中排序和选择不起作用
- python - 使用 geopandas、geoplot 和 matplotlib 的 Shapefile 地形投影不显示所有数据