微信获取openId

router.beforeEach(function(to, from, next){
    //中间页等待跳转
    if(to.meta.requireCheck=="WaitLogin"){
      utils.getCode();
    } else if(to.meta.requireCheck=="needLogin"){
      utils.getIsLogin(function(data){
        router.push({path:data});
      });
    }else{
      next();
    }
})
// 获取用户的openId
utils.getCode=function(calback) {
      utils.request("getAuthUrl",{
        accountId:window.baseUrl.accountId,
        identify: window.baseUrl.identify,
        redirectUri: window.baseUrl.OpenIdUrl,  //授权后重定向的回调链接地址
        scope: "1",
        state: "123"
      },function(data){
        if (data.success) {
          var url = data.model;
          location.href = url;
        }
      });
}
utils.getIsLogin=function(calkback) {
  var access_code = utils.getUrlParam('code');
  var redirect_uri = utils.getUrlParam('redirect_uri');
  var access_state = utils.getUrlParam('state');
  if (access_code) {
    utils.request("needLogin", {
      accountId: window.baseUrl.accountId,
      identify: window.baseUrl.identify,
      code: access_code,
      redirecturi: redirect_uri,
      state: access_state
    }, function (data) {
      if (data.success) {
        utils.setStor('openId', data.model);
        if (data.code == 0) {
         calkback('/login');  //登录
        } else {
          calkback('/home');
        }
      }
    });
  }
}

原文地址:https://www.cnblogs.com/fangnianqin/p/9933301.html