• 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失效)

    纳闷中……

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

    …很无语。

    重新部署,问题解决。

  • 相关阅读:
    华为防火墙基础自学系列 | VdPdNd概述
    最佳 DeFi 代币模型:治理代币 or 生产性代币 or veToken?
    朔雪流量复制器的前端
    PHP redis hash
    【layui-table】转静态表格时固定表格列处理行高和单元格颜色
    管理多个项目的主要挑战与应对方法
    Python的安装教程(Windows)
    RocketMQ 5.0 vs 4.9.X 图解架构对比
    C++ 运算符重载
    腾讯出来的3年测试经验小伙来面试,他这情况要求18K我该给吗?
  • 原文地址:https://blog.csdn.net/qq_34137397/article/details/126377618