我正在关注 angular-oauth2-oidc 文档中的隐式工作流示例。
在我的 Angular 应用程序中一切正常,我可以登录(在此期间我被重定向到 Identity Server),获取我的令牌并使用此令牌访问我的 Web Api。
但是,我注意到“given_name”声明为空,因此登录页面上不显示用户名。具体来说,示例代码中的以下方法似乎返回 null:
public get name() {
let claims = this.oauthService.getIdentityClaims();
if (!claims) return null;
return claims.given_name;
}
我认为这可能是权限问题,但我的范围设置为:
scope: 'openid profile email api1',
知道我需要改变什么来获得这个“given_name”声明吗?