( 2 ) token的坑

问题简介:
上文,我们说到,我不小心把url写成了第三方提供给我们的url,而且还是错误的url,
这时,出现的情况就出现了两个页面,两种进程执行后的结果.
详情观看:https://blog.youkuaiyun.com/weixin_42467515/article/details/97287928

第一:可以成功调用,第三方微信支付中间件,出现 “支付中。。。” 这个页面

第二:当支付中,这个页面程序执行后,中间件那边进行相应的业务处理,因为我给他们一个错误的url,所以出现了 .fail 页面 404找不到的问题

问题分析:
其本质原因还是因为我们的url被我们写错了,也就是里面的token被我们写错了。。。。

当然,这里虽然我知道是这样,但在做的时候又太想当然了,以为只是一个 window.location.host()的问题,以及引用、调用封装的this.GetToken()方法的问题,当然只又是我后面遇到的环节了。。。。。

但是我当时并没有看得那么远,只是存储将token写死,而已也没有采用我这里提到的什么window.location…this.GetToken()这些东西,就是写死,域名写死,token写死!

开发代码:
我这里是这样写的:
在这里插入图片描述
在这里插入图片描述
结果直接云端线上测试,出现下面错误,当然,你这里又会想问了,这样的url,没有人把关的吗?哈哈,这样也敢直接放到线上进行运维测试。。。。。

哈哈,这个还真没有,全部的人员都是初步接手上一届师兄留下的项目,交接问题也没有做太到位,但是还好,最起码的源码以及文档都存在归档,只不过有点杂乱,需要进行整理,这又是后面进展的工作了,这里我们先不进行考虑,脑核配置跟不上!!!

运行效果:

一开始出现支付成功页面,后来重新返回,查看订单详情,以及我的栏目这里出现了数据丢失问题。加载不到数据
在这里插入图片描述

在这里插入图片描述
其原因,

也就是我们这里面说到的根本问题 => token问题,我这里原来是写死的token.

这个token与后台进行交互时候,只有当支付事件执行的时候才会生效启动。而原来的token值来源是来源于什么?是来源于我微信手机上面,程序调用,主动获取,用户的信息,生成一个token值,所以说,token值具有唯一性,独特性.

It’s a unique thing!

所以,这里只需要将token值进行调用封装好了的GetToken()方法,就可以就行解决!

因为这里本质原因还是写死了的token的值将原来的用户token给覆盖了,导致反馈调用后端数据的时候,不能够找到正确的数据源,这就是前端工作人员的疏忽了!

我这里项目还在进行开发,所以现在初步先记录到这里。。。等我将bug调试解决再看一篇篇文章进行补充完整。

嘻嘻,欲知后事如何,请听下回分解…

<think>好的,我需要帮助用户了解Sa-Token的使用指南和文档。首先,根据用户提供的引用内容,我需要整理相关的信息,并按照用户的要求结构化回答。用户提到需要引用标识,所以我要注意在每个引用后面正确添加[^n]。 首先,用户引用了四个来源: 1. 引用[1]提到需要自定义SaTokenContext,参考自定义指南。 2. 引用[2]展示了使用@SaCheckPermission注解进行权限校验的例子。 3. 引用[3]讨论了@SaIgnore注解失效的问题,涉及自定义切面可能导致的冲突。 4. 引用[4]指向FastAPI-Auth的项目地址和介绍,但可能与Sa-Token关联不大,但用户可能想了解相关集成。 接下来,我需要组织这些信息。Sa-Token的核心功能包括认证、权限管理、注解等。需要分步骤说明如何开始使用,包括依赖引入、配置、注解使用以及常见问题解决。同时,需要生成相关问题,确保符合用户的要求。 注意使用中文,行内公式用$...$,独立公式单独用$$...$$。但当前内容可能不涉及数学公式,所以可能不需要使用。但如果有相关技术术语或代码,需正确格式化。 检查是否有需要添加的LaTeX,例如在解释算法时,但Sa-Token主要涉及框架使用,可能不涉及数学表达式。因此可能不需要数学公式,但需确保代码块正确使用Python或Java语法。 最后,生成相关问题,确保问题与Sa-Token相关,如核心功能、权限校验、注解冲突、自定义配置等。</think>### Sa-Token 使用指南与文档 #### 1. 核心功能与快速入门 Sa-Token 是一个轻量级 Java 权限认证框架,支持登录认证、权限校验、单点登录等功能。以下是关键步骤: **依赖引入** 在 Maven 项目中添加依赖(需根据版本更新): ```xml <dependency> <groupId>cn.dev33</groupId> <artifactId>sa-token-spring-boot-starter</artifactId> <version>最新版本</version> </dependency> ``` **配置示例** 在 `application.yml` 中配置基础参数: ```yaml sa-token: token-name: satoken timeout: 7200 # Token有效期(秒) ``` **权限校验注解** 通过 `@SaCheckPermission` 实现方法级权限控制: ```java @SaCheckPermission("user:delete") public void deleteUser() { // 方法执行前自动校验权限 } ``` 若用户无 `user:delete` 权限,请求将被拦截[^2]。 --- #### 2. 自定义配置与避指南 **自定义上下文** 若需扩展 Sa-Token 的上下文逻辑(如适配不同框架),需实现 `SaTokenContext` 接口,并参考官方指南配置[^1]。 **注解失效问题** 使用 `@SaIgnore` 注解可跳过路由鉴权,但若与其他自定义切面(如日志切面)冲突,可能导致注解失效。解决方案: 1. 调整切面执行顺序,确保 Sa-Token 的切面优先执行。 2. 检查切面逻辑是否意外覆盖了注解行为[^3]。 --- #### 3. 集成与扩展 **FastAPI 集成** 虽然 Sa-Token 主要面向 Java 生态,但若需在 FastAPI 中实现类似功能,可参考 `fastapi-auth` 项目(项目地址:[https://gitcode.com/gh_mirrors/fa/fastapi-auth](https://gitcode.com/gh_mirrors/fa/fastapi-auth))[^4]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值