jeecg微服务项目调用接口报错Token验证失效的解决方法

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
注册配置 MSE Nacos/ZooKeeper,118元/月
云原生网关 MSE Higress,422元/月
简介: jeecg微服务项目调用接口报错Token验证失效的解决方法

前言

今天,记录一篇啼笑皆非的问题。

昨晚上在做微信公众号开发时,遇到了个解决好久的问题,即:微信公众号上配置服务器信息之后,回调服务器接口总是报错token验证失败

剧透(这么几个原因 ):

  1. 项目重构一下
  2. 拦截器没有放开(这是最主要的原因)
  3. 服务器中部署的项目不是最新的,重新重构部署

原因分析

我的接口信息如下:

     /**
     * 微信公众号验证接口
     * @param signature
     * @param timestamp
     * @param nonce
     * @param echostr
     * @return
     */
    @GetMapping("/validationWeCat")
    public String validationWeCat(String signature, String timestamp, String nonce, String echostr){
        return echostr;
        
    }

这个接口要是还有问题的话,谁也说不过去吧。。。

但是发到服务器上之后,他就是有问题,问题如下:
在这里插入图片描述
这个问题看了下,一般出现这个问题的原因就是:拦截器

于是我检查了下拦截器,代码是没有问题的:

 filterChainDefinitionMap.put("/wecat/**", "anon");

该控制器的拦截也是wecat:

@Api(tags = "微信小程序控制器")
@RestController
@RequestMapping("/wecat")
@Slf4j
public class WeCatController {
    //业务代码
}

在这里插入图片描述
主要是,该控制器下的另一个接口,调用却没有任何问题,特别奇怪:

在这里插入图片描述
接口调用如下:

在这里插入图片描述
后来怎么检查都没有用,因为无处可改。
然后将代码在本地跑起来,调用接口的时候显示404。找半天原因,idea重启,nacos重启,getway重启,system重启,业务模块重启,都然并卵。

最后将项目重构了下,接口本地调通了。然后服务器上还是不行;

因为我本地没有配置docker,所以每次发布都要麻烦一下同事。

让同事重新部署,调用接口,失败!(报错Token失效)
让同事重构,重新部署,调用接口,失败!(报错Token失效)

纳闷中……

后来同事说了句话,差点儿没给我气死。
在这里插入图片描述

....很无语。

重新部署,问题解决。

目录
相关文章
|
6月前
|
NoSQL Java Redis
SpringBoot集成Redis解决表单重复提交接口幂等(亲测可用)
SpringBoot集成Redis解决表单重复提交接口幂等(亲测可用)
492 0
|
6月前
|
微服务
jeecg微服务项目调用接口报错Token验证失效的解决方法
jeecg微服务项目调用接口报错Token验证失效的解决方法
|
3月前
|
存储 JSON 前端开发
SpringBoot 如何实现无感刷新Token
【8月更文挑战第30天】在Web开发中,Token(尤其是JWT)作为一种常见的认证方式,被广泛应用于身份验证和信息加密。然而,Token的有效期问题常常导致用户需要重新登录,从而影响用户体验。为了实现更好的用户体验,SpringBoot可以通过无感刷新Token的机制来解决这一问题。以下将详细介绍SpringBoot如何做到无感刷新Token。
129 2
|
5月前
|
缓存 NoSQL Java
案例 采用Springboot默认的缓存方案Simple在三层架构中完成一个手机验证码生成校验的程序
案例 采用Springboot默认的缓存方案Simple在三层架构中完成一个手机验证码生成校验的程序
107 5
|
6月前
|
Java API Nacos
nacos常见问题之tenantid传过来失败如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
|
6月前
|
数据安全/隐私保护 开发者
在Seata中,内部根据当前的租户id,调用真正的DataSource, 这种方案有人试过吗?
在Seata中,内部根据当前的租户id,调用真正的DataSource, 这种方案有人试过吗?
|
6月前
|
安全 前端开发 Java
针对 SpringSecurity 鉴权流程做了一个详细分析,让你明白它是如何执行的!
针对 SpringSecurity 鉴权流程做了一个详细分析,让你明白它是如何执行的!
270 0
|
Web App开发 缓存 前端开发
前端项目根据环境设置请求地址和接口代理,以及解决多个localhost服务token被覆盖
一般开发项目除了正式的生产环境,还会有对应的开发环境、测试环境和预发布环境,每个环境所访问的接口地址肯定不一样,如果自己一个个手动修改那就太不程序猿了
625 1
|
缓存 NoSQL 前端开发
若依系统(分离版)后台接口被调时,代码哪里判断了token是否超时?
若依系统(分离版)后台接口被调时,代码哪里判断了token是否超时?
1109 0
|
安全 Java 程序员
SpringBoot中如何实现业务校验,这种方式才叫优雅!
SpringBoot中如何实现业务校验,这种方式才叫优雅!
175 0