golang jwt挖坑

本文记录了在Golang中使用jwt-go库解析由Java的jjwt 0.9.0生成的JWT时遇到的问题。由于Java使用us-ascii编码,而Golang默认使用utf-8,导致签名验证失败。通过深入源码,发现Java在设置加密方式时对密钥进行了base64解码,而在Golang中直接将字符串转换为字节。修正Golang中密钥的处理方式,将字符串通过base64解码后再用于签名验证,问题得到解决。
摘要由CSDN通过智能技术生成

golang jwt使用

golang jwt使用中遇到的一个坑,特此记录。

具体描述:因为公司需要,现有架构jwt生成token的代码是java实现的,然后现在在golang中需要对此token进行解析。
java 用到的jar包: io.jsonwebtoken.jjwt 0.9.0
golang 用到的库:github.com/dgrijalva/jwt-go

java生成token测试代码如下:

public static void main(String[] args) {
        String tokenSecretKey="whatthefuck123weishenmebuneng123";   //密钥
        Map<String, Object> claims = new HashMap<String, Object>();
        claims.put("iss", 
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值