邮递员脚本:如何解码令牌

Posted

技术标签:

【中文标题】邮递员脚本:如何解码令牌【英文标题】:Postman scripting: how to decode token 【发布时间】:2019-04-09 15:21:29 【问题描述】:

我正在使用带有脚本的邮递员。

    首先,我执行一个请求以检索 oauth 令牌

    然后,在“测试”选项卡中,我使用邮递员脚本来使用接收到的令牌来设置全局(邮递员)变量。

另外,我想解码令牌,因为我想使用令牌内的信息将它们设置为变量。令牌 payload 是 base 64 url​​ 编码的。

我该怎么做?

【问题讨论】:

【参考方案1】:

我在网上找到了这段代码。它使用 atob 沙盒脚本来解码 base 64 编码的有效负载

const jsonData = JSON.parse(responseBody);
const payload = jsonData.id_token.split('.')[1];  // Assuming the JWT is in id_token
const parsed = JSON.parse(atob(payload));
pm.environment.set('user_id', parsed.user_id); // Assuming user_id is in the payload

【讨论】:

以上是关于邮递员脚本:如何解码令牌的主要内容,如果未能解决你的问题,请参考以下文章

邮递员脚本:如何引用带有网址的 json 节点作为名称

注销方法不会从数据库中删除令牌

如何在没有邮递员的情况下传递令牌

如何使用邮递员从 keycloak 获取访问令牌(授权码流)

取回不记名令牌邮递员扑腾

如何将承载令牌添加到 HTTP 请求的标头?