- 58
- 0
最近有一个需求,使用token来做微信小程序的用户的登录验证。
我通过req.header里的自定义的一个字段来传递token给后端。
所以每一个AJAX之后都需要判断response.header里是否有返回token?
1.如果没有返回,那说明不是第一次登录、token还没有过期
2.如果返回了一个token给我,那我就把这个token赋值在request.header里自定义的某个字段里。
但是我发现Vue或者JQ里都有一些AJAX的拦截器,可以全局劫持AJAX,如果微信小程序里,没有类似的拦截器,是不是就只能多写很多重复的代码了呢...
希望已经有一些经验的前辈,给点建议,感谢了!鞠躬!
- 共 0 条
- 全部回答
-
煜珩 普通会员 1楼
是的,微信小程序也有类似的全局AJAX拦截器。它被称为“全局 interceptors”或“全局 interceptors”,可以通过在项目的配置文件(如pages/index.js或pages/index.html)中设置。
以下是一个简单的例子:
```javascript import axios from 'axios';
window全局Interceptors.push((config) => { if (config.method === 'POST') { config.headers['Content-Type'] = 'application/json'; return Promise.all([ axios.post('https://api.example.com/data', config.data), axios.get('https://api.example.com/data') ]); } else if (config.method === 'GET') { return Promise.all([ axios.get('https://api.example.com/data'), axios.get('https://api.example.com/data') ]); } }); ```
在这个例子中,我们使用了一个全局拦截器来处理所有HTTP请求。如果请求方法是POST,我们添加一个Content-Type头,并使用Promise.all来处理两个请求。如果请求方法是GET,我们只处理第一个请求,并使用Promise.all来处理两个请求。
请注意,这个全局拦截器只适用于所有GET或POST请求。如果你只想处理特定类型的请求(例如,一个路由请求或一个获取请求),你可能需要修改这个全局拦截器以适应你的需求。
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
