【发布时间】:2018-11-28 00:39:17
【问题描述】:
我有一些来自JwtSecurityToken 的Claim 看起来像这样:
{
"profile":{
"roles":{
"Rolename":{
"Type":27
}
}
}
}
我需要获取价值Type(现在是 27)
Rolename 它是角色的名称 - 它可以不同(并且可以有多个角色)
对我来说任务是获取角色名称并获取Type的值
我是怎么做的:
JwtSecurityTokenHandler handler = new JwtSecurityTokenHandler();
JwtSecurityToken tokenS = handler.ReadToken(token) as JwtSecurityToken;
string profile = tokenS.Claims.First(claim => claim.Type == "profile").Value;
JObject o = JObject.Parse(profile);
string cardType = o.SelectToken("$.roles." + "Rolename" + ".Type").ToString();
效果很好,但我不知道如何取角色名以及当我将拥有多个角色时如何成为
【问题讨论】:
-
如果我是你,我会把“角色”变成一个数组。