当前位置: 首页 > 知识库问答 >
问题:

在Charles Proxy中自动解码JWT令牌

蒙麒
2023-03-14

我一直在使用Charles调试移动应用程序和API之间的通信。

我们现在将客户端(app)和服务器都更改为使用JSON Web令牌(JWT)。

有没有办法配置Charles,以便在浏览请求时对JWT进行解码?

基本上,请求(从移动应用程序到服务器)将由一个包含JWT的标头(授权)组成,当我在Charles中单击该请求时,我想看到:
-原始令牌
-解码标头
-解码负载

查看Charles的文档,我发现以下内容:
-重写工具:可以用解码的数据替换令牌,但似乎不支持函数(base64decode),只支持纯文本或和regexp替换
-映射远程工具:似乎可以通过调用服务器上的脚本来完成这项工作,该脚本将原始请求作为参数,并返回带有解码数据的新请求。文档描述了替换特定源的用法(在浏览网站时),因此我很难看到它如何应用于这种情况(客户端到API的通信)。似乎无法将原始请求作为参数传递(只是替换它)。

我知道我总是可以在解码JWT的工具中复制粘贴令牌,但这是一小步,我会重复一百次/数千次,所以我想避免它。

或者,是否有其他方法可以调试移动设备和服务器之间以JWT格式编码的HTTP请求?

共有1个答案

宋建本
2023-03-14

由于Charles Proxy不支持JWT解码功能,您可以试用Proxyman,它可以自动解码JWT并在一个好的地方显示。

如果您需要操作它,您可以查看JWT Decode Addon。脚本功能允许您编写JS代码以实现相同的结果。

免责声明:我是Proxyman的创建者。希望这个答案能帮助你。

 类似资料:
  • 问题内容: 我目前正在使用Golang应用程序。我从客户端收到JWT令牌,在Go中,我需要对该令牌进行解码并获取以下信息:用户,名称等。我正在检查可用于处理JWT的库令牌,我来到https://github.com/dgrijalva/jwt- go ,但我看不到如何简单地制作所需的东西。 我有令牌,我需要将信息解码为地图或至少为json。在哪里可以找到如何做的指南?谢谢! 问题答案: 函数接受第

  • 我想解码我使用Postman收到的jwt令牌,并在RESTAPI中实现它。我该怎么做?我看到有人发布代码来解码jwt令牌(参考:如何在不使用库的情况下在javascript中解码jwt令牌?)但我不明白在《邮差》里怎么做?解码jwt需要什么url?需要什么标题、授权?

  • 我使用jsonwebtoken解码我的令牌,看看它是否已过期。但是,控制台.log返回 null。 我不明白,因为我的令牌不为空

  • 我添加了Firebase,允许客户端直接从web应用程序客户端(浏览器)进行身份验证。我正在使用firebase web JS包,它工作得非常好。我可以在浏览器中看到,我收到一个用户对象,其中包含有关该用户的信息,包括。 然后,我需要在我的服务器后端(即python django)上对该用户进行身份验证。在Firebase文档中,我找到了一个我正试图做的操作指南,即验证id令牌。 因为他们没有支持

  • 我有以下代码在Javascript中解码Jwt令牌(参考:如何在Javascript中解码Jwt令牌) 我从上面的代码中得到了我需要的有效负载,但我在节点中实现了它,那里我们没有“atob”函数来解码base64编码的字符串 似乎我们需要在节点中使用缓冲区。我做了研究,提出了下面的解决方案,但不起作用。 请让我知道是否有更好的方法-没有库(Jwt或decode-Jwt)

  • 我不明白这个图书馆是如何工作的。你能帮帮我吗? 以下是我的简单代码: 这是错误: 字符串需要采用紧凑的JSON格式,格式为:Base64UrlEncodedHeader。Base64UrlEndcodedPayload。可选,Base64UrlEncodedSignature'。 如果你复制流在jwt.io网站,它的作品罚款:)