欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

微信公众号之获取openId

程序员文章站 2022-05-03 14:14:41
在小伙伴们开发微信公众号、小程序或者是在微信内置浏览器打开的项目时,会遇到的第一个问题就是如何获取openId,今天小编就给大家带来的是如何获取openId。 首先 我们要从微信开发者后台得到appid,这个appid是管理员在设置微信后台时获取的,而且是唯一的,而且还需要在微信后台设置回调域名。 ......

在小伙伴们开发微信公众号、小程序或者是在微信内置浏览器打开的项目时,会遇到的第一个问题就是如何获取openid,今天小编就给大家带来的是如何获取openid。

  首先   我们要从微信开发者后台得到appid,这个appid是管理员在设置微信后台时获取的,而且是唯一的,而且还需要在微信后台设置回调域名。

  其次 这些都准备好以后,我们就可以使用微信自带的方法获取openid:

微信公众号之获取openId

 

 

     注意:划线部分是要获取的openid和回调域名,而  location.href = url 是当页面第一次渲染时,自动获取openid,当然,这些还是准备工作

微信公众号之获取openId

 1 //截取url字段
 2     getquerystring: function(name) {
 3       var reg = new regexp("(^|&)" + name + "=([^&]*)(&|$)", "i");
 4       var r = window.location.search.substr(1).match(reg);
 5       if (r != null) {
 6         return unescape(r[2]);
 7       }
 8       return null;
 9     },
10     gettoken: function() {
11       //判断是否有openid
12       if (this.$cookiestore.getcookie("openid") == null) {
13         var url =
14           "https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx1234567890&redirect_uri=" +
15           encodeuricomponent(
16             "https://www.baidu.com/"
17           ) +
18           "&response_type=code&scope=snsapi_base&state=state#wechat_redirect&connect_redirect=1#wechat_redirect";
19         location.href = url;
20         var code = this.getquerystring("code");
21         // console.log(code);
22         axios({
23           url: "接口名" + code
24         }).then(res => {
25           // console.log(res);
26           if (res.data.code == 0) {
27             this.$cookiestore.setcookie("openid", res.data.result);
28           }
29         });
30       } else {
31         this.openid = this.$cookiestore.getcookie("openid");
32       }
33     },

 

      我们要使用上图的方法来获取code值,通过接口,来获取openid,然后把openid存在cookie里每次调用就可以了。

这就是小编给大家带来的获取openid的方法,下面是完整代码。