微信获取用户数据后台写法,author2.0认证

 1 /* 微信授权接口 */
 2 //1、设置路由
 3 router.get(‘/wechat/userinfo‘, function(req, res) {
 4     var cb = req.query.cb;
 5     //设置cookie
 6     res.cookie(wechat_userinfo_callback_url, cb);
 7     var url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=" + appid + "&redirect_uri=http://m.moretao.com/wechat/userinfo/callback&response_type=code&scope=snsapi_userinfo#wechat_redirect";
 8     //2、重定向到拼接url
 9     res.redirect(url);
10 });
11 //3、重定向的url经过微信服务器转到如下地址;
12 router.get(‘/wechat/userinfo/callback‘, function(req, res) {
13     //获得code
14     var code = req.query.code;
15     //用code拼接url
16     var url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=" + appid + "&secret=" + appsecret + "&code=" + code + "&grant_type=authorization_code";
17     //4、后台用request请求数据;目的是为了获取刷新token
18     request.get(url, function(error, response, body) {
19         //获得刷新用的token值
20         var json = JSON.parse(body);
21         //用得到的刷新token值拼接url
22         var refresh_url = "https://api.weixin.qq.com/sns/oauth2/refresh_token?appid=" + appid + "&grant_type=refresh_token&refresh_token=" + json.refresh_token;
23         //5、后台用request请求数据;为了获取最终access_token
24         request.get(refresh_url, function(error, response, refresh) {
25             var json = JSON.parse(refresh);
26             //用access_token拼接url
27             var info_url = "https://api.weixin.qq.com/sns/userinfo?access_token=" + json.access_token + "&openid=" + json.openid + "&lang=zh_CN";
28             //6、后台用request请求数据,获取用户数据;
29             request.get(info_url, function(error, response, info) {
30                 //通过cookie取出开始传入的url地址
31                 var callback = req.cookies[wechat_userinfo_callback_url];
32                 //将数据拼接到url中,并且将数据用encodeURLComponent转码;
33                 var str = "?data=";
34                 if(callback.indexOf(‘?‘) > -1) str = "&data=";
35                 var ret = callback + str + encodeURIComponent(info);
36                 //7、重定向到目标url并加上转码的数据,前端得到后需要转码处理
37                 res.redirect(ret);
38             });
39         });
40     });
41 });
时间: 2024-09-30 18:46:58

微信获取用户数据后台写法,author2.0认证的相关文章

C#开发微信门户及应用(14)-在微信菜单中采用重定向获取用户数据

我曾经在系列文章中的<C#开发微信门户及应用(11)--微信菜单的多种表现方式介绍>中介绍了微信菜单里面的重定向操作,通过这个重定向操作,我们可以获取一个code值,然后获取用户的openID,进而就能获取到更多的用户信息,这个在会员信息的场景里面用的很多,本篇介绍在网站中迅速配置这样的菜单链接,并介绍如何在后台获取相关的用户信息,实现页面数据个性化的展现操作. 我们知道,微信的自定义菜单分为两大类,分别对应Click类型和View类型的,而重定向属于View类型的一种,如下所示. 1.微信重

.NET 微信开发之 获取用户数据

通过微信接口获取用户信息主要分为以下几个步骤: a.获取公众号的access_token b.通过查询所有用户OPenid接口获取所有用户. string url = "https://api.weixin.qq.com/cgi-bin/user/get?access_token=" + access_token; c.通过获取用户openid,然后通过openid获取用户数据 d.把用户信息添加到数据库中. 1.参数化查询以及添加用户信息到数据库方法 public void AddT

微信获取用户地理位置,查找出附近所有商家

微信获取用户地理位置,官网上文档不太完善,还是附上 微信获取用户地理位置开发文档地址:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp142114084 总的来说分为两大部分 1,生成JS-SDK权限验证签名 2,使用地理位置接口获取坐标 完整类文件代码如下: <?php class JSSDK { private $appId; private $appSecret; public function __construct($a

企业微信获取用户信息

企业微信获取用户信息 本文内容出自官方文档:   https://work.weixin.qq.com/api/doc/10028#根据code获取成员信息 直接进入正题: 实现需求:企业微信上新建应用,访问该应用实现直接免登录进入应用. OAuth2.0接入流程说明 第一步.获取code 需要在打开的应该中配置如下特定的访问地址: https://open.weixin.qq.com/connect/oauth2/authorize?appid=CORPID&redirect_uri=REDI

微信获取用户的openid和详细信息

获取用户的信息的原理,首先用户会点击一个url,这个url会包含一个参数redirect_uri,这个url是指向微信那边的服务器的,然后微信会把这个http请求重定向到redirect_uri,即我们的后端,而且会附带一个code参数,如果我们需要获取用户的基础信息(也就是openid)就需要用这个code去访问微信的指定url来请求用户的openid,如果我们需要获取用户的详细信息(微信名称,头像),我们就需要先用code获取一个access_token,再用这个access_token来获

onLaunch与onLoad同步获取用户数据

前言 在开发项目的时候遇到从全局获取用户信息,逻辑是从app.js中的onLauch获取,page页面的onLoad拿到数据填充到页面.遇到的问题是onLauch与onLoad是异步的,没办法从页面判断app.js中获取数据的先后,于是参照网上的方式用回调进行处理. 代码 app.js App({ globalData: { //需要获取的数据 userInfo: null, //回调函数 cb: null }, onLauch: function(){ //异步获取用户数据 wx.reques

微信获取用户信息的两个接口和两个ACCESS_TOKEN

有一段时间没有搞微信开发了 ,今天突然要改一下程序! 回头一看 微信的帮助文档太tm的稀烂的,太难懂了,这做个笔记以后看着方便 微信有2个ACCESS_TOKEN, 1,基础接口的token 获取接口是 https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET 2,用户网页授权access_token 获取接口地址是 https://api.weixin

H5、微信 获取用户当前位置信息

在之前的 调用百度地图API的总结 中获取当前位置信息我用的是 H5 ,其实微信也提供了获取用户地理位置的方法,现将这两种方法都贴出来,看情况选择使用. 一.H5 获取当前地理位置得到经纬度 // H5 获取当前位置经纬度 var location_lon = '',location_lat = ''; // 经度,纬度 if (navigator.geolocation){ navigator.geolocation.getCurrentPosition(function (position)

微信获取用户基本信息,头像是一张“暂时无法查看”的图?

是这个 http://wx.qlogo.cn/mmopen/UAqwJ95HSLycmQktIqAYuexoytJ3kJzknQ4icJkNpfUvxfqoNRDY2esKQj3YvxXuQacsu9fYKDQ1VUSVBxspic4MwNDTF4Z4zu/0 我看到的图是下面这样的,以前这个用户的头像是正常的,但是最近发现变成这样了,他也没有换微信头像的. 会不会是微信的头像地址改了? 现在可以了,我重新给他向微信获取了一遍信息,原来的图片url就可以用了,而且我发现微信有个逻辑变了:以前用户