在AWS Amplify JS v6中获取原始Access/ID Token的方法
获取AWS Amplify v6中的原始Access Token和ID Token
在Amplify v6中,fetchAuthSession返回的令牌对象默认会解析JWT的payload,要获取原始令牌字符串,可通过以下方式操作:
- 每个令牌(
idToken/accessToken)均为Jwt类型,调用其toString()方法即可得到完整的原始JWT字符串; - 部分版本也可直接访问令牌对象的
raw属性获取原始令牌内容。
修改后的代码示例:
import { fetchAuthSession } from "aws-amplify/auth"; async getCurrentSession() { const session = await fetchAuthSession(); // 获取原始ID Token const rawIdToken = session.tokens?.idToken?.toString(); // 获取原始Access Token const rawAccessToken = session.tokens?.accessToken?.toString(); console.log("原始ID Token: ", rawIdToken); console.log("原始Access Token: ", rawAccessToken); }
补充说明:
如果调用fetchAuthSession未返回完整令牌对象,可尝试传入forceRefresh参数确保会话有效:
// 若会话过期可将forceRefresh设为true强制刷新 const session = await fetchAuthSession({ forceRefresh: false });
内容的提问来源于stack exchange,提问作者Aliaksei Stadnik
相关产品推荐
相关产品推荐

