接口做登录验证,会在请求头中放入一个token验证

小程序加载,后端登录接口返回一个token,这个token需要在之后所有的请求中都放在头部请求。

因为是异步操作,所以,首页的接口发起请求的时候,可能token值还没有拿到。

我目前只想到两种做法(效果都不好,新手勿喷):

调用封装的request时,判断有没有token,如果没有,则用setTimeout延时请求,做个递归,达到一定时间判断网络故障。(但是在app.js中存起来的token变量有时不知道为啥突然是undefined,)

调用封装的request时,判断有没有token,如果没有,重新调用请求从后端再拿token,这样造成首页多次调用login接口。

有没有办法,可以在请求完token之后,再加载小程序呢?

例如像vue这样:

const  login = async ( ) => { return 'torkn'}

login( ).then(token => {

  const app = new Vue({

      el: '#app',

template: data

  })

})

展开全部
收起
2回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • Mieczyslaw

    16人对此回答表示赞同

    用回调模式在app.js中封装request,将token存放gobledata中

    展开
    16
    3回复
    发布于 5年前

    评论(3)

    收起评论

    • 周欣 2019-02-08 12:45

      非常感谢

      回复
    • James 2019-02-10 16:57

      这是用户提交反馈前先判断有没有用户相关的信息t是app.js

      回复
    • 邱宸 2019-02-12 22:21

      能贴一部分示例代码或者实例demo么?

      回复
  • justsososo

    12人对此回答表示赞同

    新手的话,promise和async/await了解吗,应该就是这三个东西解决的问题吧

    展开
    12
    5回复
    发布于 5年前

    评论(5)

    收起评论

    • Alexa 2019-02-06 20:01

      promise支持的

      回复
    • 如花 2019-02-08 21:07

      《小程序网络请求怎么实现同步》的评论:https://developers.weixin.qq.com/community/develop/doc/00022838614a700bca17d5b1259c00?highLine=%E5%BC%82%E6%AD%A5%20request&jumpto=reply&commentid=0006e0321489d8feda17690f45bc&parent_commentid=000eee922e0c08accb1714008578

      回复
    • Christopher 2019-02-10 22:28

      谢谢

      回复
    • Jason 2019-02-12 17:36

      http-provider.js

      回复
    • 庄晋 2019-02-14 11:50

      感谢回答,能贴部分示例demo么?

      回复
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部