Cannot invoke “String.getBytes(java.nio.charset.Charset)“ because “secretKey“ is null

错误java.lang.NullPointerException: Cannot invoke "String.getBytes(java.nio.charset.Charset)" because "secretKey" is null

在做一个微服务项目时,我在common模块定义了Jwt配置类,用于从配置文件application.yml中读取Jwt配置(自定义密钥、过期时间等),遇到了上述错误。

/**
 * @author
 *  Jwt配置读取类
 */
@Component
@ConfigurationProperties(prefix = "my.jwt")
@Data
public class JwtProperties {
    // 密钥
    private String secretKey;

    // 过期时间
    private long expireTime;

//    // 保存token的字段名称
//    private String tokenHead;
}

原因:排查发现是因为我需要的是在user子模块实现生成jwt的功能,但是我将jwt的配置信息写在了common模块的配置文件中

解决办法:正确的做法是在user模块的application.yml中配置jwt配置信息

my:
  jwt:
    secret-key: ***** # 密钥
    expire-time: 36000000 # 过期时间(单位:毫秒)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值