如何解决从 Xero 的 OAuth 流中获取用户电子邮件的惯用方法是什么
我有一个网络应用程序,它使用 Xero.NetStandard.oauth2client
包来允许使用 Xero 进行身份验证。
一旦用户被重定向回我的应用程序,我就会使用 IXeroClient.RequestAccesstokenAsync
方法将他们的代码交换为 IXeroToken
对象,这允许我按预期调用 Xero API。
我不知道该怎么做,而且在官方文档中似乎找不到的一件事是,我如何从 {{1} } 对象。
根据标准,信息在 IXeroToken
属性中编码为 JWT 字符串,但我不确定如何在没有额外依赖的情况下从中获取信息。
解决方法
内置的 IdToken
类可以反序列化 System.IdentityModel.Tokens.Jwt.JwtSecurityToken
负载。
IdToken
包含令牌中的所有声明。
相关类型有:
-
new JwtSecurityToken(accessToken.IdToken).Claims
- 用户的电子邮件 -
email
- 用户的 ID (guid) -
xero_userid
- 用户的名字 -
given_name
- 用户的姓氏
权利要求的存在显然以设置的适当范围为条件。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。