QQ网站和appQQ账号的统一问题解决

关于登陆

众所周知,登陆微信有公众号登陆,有开放平台登陆,有的时候你的项目既有PC端又有APP,为了让这两个端的用户登陆效果实现统一,微信给出了一个统一的id(两个都得用微信开放平台的功能,微信公众号可以关联开放平台),那么问题来了,QQ没有!!!!官方没有出统一Id的方法。。。资讯客服以后,发现必须手动发邮件去申请统一码!(要不你的pc端登录和App不是一样的,会导致一个QQ绑定两个手机号)

福利如下!!!!前方高能~

去邮箱给 content@qq.com发一份邮件,把开发者账号,和营业执照,两个要统一的应用ID发过去,这里要统一的应用必须在一个开发者账号上(废话!~)这两个应用分别是QQ互联上申请通过的。
{具体还是和QQ的客服沟通 QQ:800013811}


然后,等1~5个工作日,客服会给你回复,就是下面这个样子↓


然后呢,你PC端或者Wap端是不是让相应的技术人员把获取的地址改一下就行了,对吧?

那么问题来了(摊手)

你apicloud调用的是官方给出的第三方模块,怎么办呢?改不了底层啊?根本看不见代码啊?怎么办怎么办?



和后台同事沟通的时候 ,发现 需要accessToken就行,那我看不到第三方模块的内容,但是我登录的时候callback返回了accessToken那是不是就可以用呢?然后我就试了试,我发现真的可以用!!!!~

var qq = api.require("qq");
      qq.login(function(ret, err) {
          qqinfo();
          var nickname=$api.getStorage("nickname")
          var head_pic=$api.getStorage("head_pic")
          var openId=ret.openId;
          var accessToken=ret.accessToken;//获取到accessToken
          
          然后执行QQ给的api地址获取东西
          api.ajax({
              url: "https://graph.qq.com/oauth2.0/me?access_token="+accessToken+"&unionid=1",  //注意accessToken的引用
              method: "get",
          },function(ret, err){
              if (ret) {

              } else {
                  var qqres=eval(err);
                  var Uid=qqres.body;
                  Uid=Uid.split("unionid":"")[1];//这里 split的方法,截取字段
                  Uid=Uid.split(""}")[0];//这个就是统一的id值了
					//在下面和后台交互中就可以用统一值了 ~~~~~
              }
          });
          //这里只能用err里面的信息,弹出的因为是服务器格式错误,但是完全不影响我们从里面取值啊!**
          //代码不全,估计大家都能看懂!
文章导航