Answered by:
How to get id exist inside user object in claim on jwt ?

Question
-
User696604810 posted
i work on asp.net core 2.2
i have access token encrypted and i need to get id o user from it
so that i do following code
var handler = new JwtSecurityTokenHandler(); var jsonToken = handler.ReadJwtToken(AccessToken); var user = jsonToken.Claims.First(claim => claim.Type == "user").Value;
result of jsonToken = {{"alg":"none","typ":"JWT"}.{"user":{"id":"Admin"}}}
this line of code exist below
var user = jsonToken.Claims.First(claim => claim.Type == "user").Value;
return {"id":"admin"}
i need to get value of id meaning i need to return Admin
how to do that please ?
Tuesday, September 10, 2019 4:39 AM
Answers
-
User711641945 posted
Hi ahmebarbary,
You could modify like below to get the data:
var obj = JObject.Parse(user); var id = obj.Children().Children().First().ToString();
Best Regards,
Rena
- Marked as answer by Anonymous Thursday, October 7, 2021 12:00 AM
Wednesday, September 11, 2019 1:44 AM
All replies
-
User711641945 posted
Hi ahmedbarbary,
You could convert user string to JObject and get the children like below:
var user = jsonToken.Claims.First(claim => claim.Type == "user").Value; var obj = JObject.Parse(user); var id = obj.Children().Children();
Best Regards,
Rena
Tuesday, September 10, 2019 7:18 AM -
User696604810 posted
thank you for reply
it not give me value it give me id only
i need value of id that represent Admin
when debug the result of last line of var id is
id = {Newtonsoft.Json.Linq.JEnumerable<Newtonsoft.Json.Linq.JToken>}
Tuesday, September 10, 2019 1:18 PM -
User696604810 posted
i modify that
i make
var id = obj.Children().Children()[0].Value<string>();
i get exception source must be jtoken
Tuesday, September 10, 2019 1:34 PM -
User711641945 posted
Hi ahmebarbary,
You could modify like below to get the data:
var obj = JObject.Parse(user); var id = obj.Children().Children().First().ToString();
Best Regards,
Rena
- Marked as answer by Anonymous Thursday, October 7, 2021 12:00 AM
Wednesday, September 11, 2019 1:44 AM