微信网页静默授权 --- snsapi_base

在微信网页中,可能只需要得到openId,那么我们需要使用静默授权方式。

1. 初始化过程中判读是否存在code

async created () {
    let code = this.getQueryString('token')
    if (code) {
      await this.getUser(code)
    } else {
      this.getCode()
    }
  }

2. 获取code方式

getCode() {
   let urlNow = encodeURIComponent(window.location.origin + window.location.pathname)
    let url = `${后端域名}/url?brand=${公众号品牌名称}&url=${urlNow}&scopes=snsapi_base`
    window.location.replace(url)        
} 

3. 截取token【用于请求后端接口,获取openId】

 // 获取url参数
    getQueryString (name) {
      let reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i')
      let r = window.location.search.substr(1).match(reg)
      if (r != null) {
        return unescape(r[2])
      }
      return null
    }  
posted @ 2019-08-27 19:29  包子不包子  阅读(902)  评论(0编辑  收藏  举报