spe*_*ine 6 authentication amazon-web-services aws-amplify
我试图弄清楚如何访问使用Auth库从aws-amplify获得的accessToken,refreshToken和idToken。
文档中的示例:https : //aws.github.io/aws-amplify/media/authentication_guide.html
我的用法示例:
const user = await Auth.signIn(email, password);
user有很多无法访问的属性,包括我需要的一切。在文档中,尚不清楚如何获取这些属性,因为这些示例都记录了结果。有任何想法吗?
xrp*_*pza 13
Auth.currentSession()会返回一个CognitoUserSession含accessToken,idToken和refreshToken。
该CognitoUserSession实际上是以下情况:CognitoUserSession {idToken: CognitoIdToken, refreshToken: CognitoRefreshToken, accessToken: CognitoAccessToken, clockDrift: 0}
此时可以通过简单的点符号来访问该对象内的对。
示例:检索 accessToken 并登录到控制台
Auth.currentSession().then(data => console.log(data.accessToken));
Run Code Online (Sandbox Code Playgroud)
结果将是形式为CognitoAccessTokenCognitoAccessToken { jwtToken: '', payload: ''}
如果你只是想jwtToken在内部CognitoAccessToken,它只是点记号一路下滑(与日志主机为例):
Auth.currentSession().then(data => console.log(data.accessToken.jwtToken));
Run Code Online (Sandbox Code Playgroud)
注意:如果需要,此方法还会刷新当前会话(参考)。
Auth.currentSession().then(res=>{
let accessToken = res.getAccessToken()
let jwt = accessToken.getJwtToken()
//You can print them to see the full objects
console.log(`myAccessToken: ${JSON.stringify(accessToken)}`)
console.log(`myJwt: ${jwt}`)
})
Run Code Online (Sandbox Code Playgroud)
我相信你能做到
Auth.currentCredentials(credentials => {
const tokens = Auth.essentialCredentials(credentials);
})
Run Code Online (Sandbox Code Playgroud)
其中EssentialCredentials将返回所有令牌
希望这可以帮助。
| 归档时间: |
|
| 查看次数: |
4619 次 |
| 最近记录: |