2***@qq.com
2***@qq.com
  • 发布:2019-10-29 21:22
  • 更新:2019-10-30 20:42
  • 阅读:1894

#插件讨论# 【 luch-request[支持js/ts] - luxe 】拦截器无法获取全局token

分类:uni-app

楼主开发这个插件很棒~我是前端菜鸟一枚,想问个问题呀,插件正常使用没有问题,不过就是在APP端无刷新的情况下,登录后没有获取到全局token缓存,我是在插件的index.js中写如下代码(主要看token这段)

import Request from './request'  

const http = new Request()  
const userInfo = uni.getStorageSync('userInfo')  

http.setConfig((config) => { /* 设置全局配置 */  
    config.baseUrl = 'http://xxx.com' /* 根域名不同 */  
    config.header = {  
        ...config.header,  
        token: userInfo.token  
    }  
    return config  
})

会发现APP端无论如何都获取不到token,H5端刷新一下浏览器就正常。我是在登录成功后,注册userInfo为全局缓存。拦截器如何正确获取全局缓存的打开方式,还望大牛们指点一二。

2019-10-29 21:22 负责人:无 分享
已邀请:
luch

luch

妈呀,这问题都要我回答。没人抢答一下吗!

  • 8***@qq.com

    请问一下luch-request发请求,预览不成功,真机调试可以,这是什么情况

    2020-03-24 10:02

  • luch

    回复 8***@qq.com: 是百度小程序吗?阅读文档-作者想说-关于问问题/如何问问题

    2020-03-24 14:23

luch

luch

妈呀,这问题都要我回答。没人抢答一下吗!

luch

luch

setConfig一般用于设置静态设置,比如说默认请求方式替换,content-type替换等等……,为什么呢,因为他全局只执行一遍。比如说未登录时,setConfig,没有token,等你登陆完有token了,但是他不会再设置一遍了。对于token这种动态的东西,应该放在request拦截器里面设置。这个问题我在issue里面也回答过了

2***@qq.com

2***@qq.com (作者) - 后端猿,学点前端

都说我是菜鸟了,哈哈哈。。谢谢哈!我去修改一下

该问题目前已经被锁定, 无法添加新回复