• 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;
            
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

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

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

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

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

    该控制器的拦截也是wecat:

    @Api(tags = "微信小程序控制器")
    @RestController
    @RequestMapping("/wecat")
    @Slf4j
    public class WeCatController {
    	//业务代码
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

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

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

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

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

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

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

    纳闷中……

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

    …很无语。

    重新部署,问题解决。

  • 相关阅读:
    哲学家就餐问题与python解决方案
    网课自动暂停解决方法、挂课后台播放方法、解决继续教育自动暂停
    springboot依赖管理和自动配置
    【应用层协议】初始Http,fiddler的使用
    基于信号量与环形队列实现读写异步缓存队列
    SpringBoot-异常处理
    Unity 顶点vertices,uv,与图片贴图,与mesh
    .net core 大文件上传
    【排序】桶排序(c++)
    64ELK日志分析系统
  • 原文地址:https://blog.csdn.net/qq_34137397/article/details/126377618