我有一个简单的要求,即在每个请求中读取asp.net core web api中的令牌,并读取具有UserID的令牌的子部分。令牌验证将由第三方rest api调用完成,该调用将告知令牌是否有效。我的api中不应该存在验证逻辑。
不幸的是我读过的所有文章,他们都在验证令牌,我不希望这样做。
非常感谢任何帮助。
答案 0 :(得分:1)
您可以使用以下扩展方法从simple
获取userID。使用包含userID值的ClaimType。
HttpContext
控制器方法的用法:
public static int GetUserID(this Microsoft.AspNetCore.Http.HttpContext context){
var claimsIdentity = context.User;
var claim = claimsIdentity.Claims.FirstOrDefault(cl => cl.Type == ClaimTypes.YOUR_CLAIM_TYPE);
return Convert.ToInt32(claim.Value);
}