【发布时间】:2021-11-01 15:35:18
【问题描述】:
我正在寻找一种方法来解码 python3 中的 JWT 访问令牌,而无需安装任何额外的包,如 jwt。类似this PowerShell 的示例。
谢谢!
【问题讨论】:
-
只需将令牌分成 3 部分,然后 base64url 将第二部分(有效负载)解码为 JSON 字符串。
-
感谢您的提示,毕竟:)
我正在寻找一种方法来解码 python3 中的 JWT 访问令牌,而无需安装任何额外的包,如 jwt。类似this PowerShell 的示例。
谢谢!
【问题讨论】:
好的,发现这确实不是太难做到:)
payload = access_token.split('.')[1]
# Apply padding. Add = until length is multiple of 4
while len(payload) % 4 != 0:
payload += "="
decoded_payload = base64.b64decode(payload)
decoded_token = json.loads(decoded_payload.decode("utf-8"))
oid = decoded_token['oid'] # or any other field from the JWT you want to access
【讨论】: