微信网页授权封装接口——node.js版
Wechat 网页授权
授权url:(请在微信客户端中打开此链接体验)
xxx为config.js中的
WECHAT_DOMAIN
1、scope为snsapi_base
xxx/?route=auth&redirect_uri=http://www.baidu.com/&scope=snsapi_base&state=123
2、scope为snsapi_userinfo
xxx/?route=auth&redirect_uri=http://www.baidu.com/&scope=snsapi_userinfo&state=123
参数说明:
参数 | 描述 | 例子 |
---|---|---|
redirect_uri | 获取用户信息后回调的url | encodeURIComponent('http://www.baidu.com') |
scope | snsapi_base / snsapi_userinfo [默认snsapi_base] | snsapi_base 静默授权,返回info=openid / snsapi_userinfo 非静默授权,返回完整用户信息:info={用户信息json格式字符串} |
state | 回调后会带上state参数,可以填写a-zA-Z0-9 | 123 |
授权方式说明:
1. scope=snsapi_base调用成功后会将openid重定向至回调页面
调用成功后示例:
http://www.baidu.com?info=oJT88wHBcuAwp7fCvJ9VvS1iE4zg&state=123
info为openid
state为初始带来的参数
2. scope=snsapi_userinfo调用成功后会将详细用户信息(包含openid)重定向至回调页面
调用成功后示例:
http://www.baidu.com?info={%22openid%22:%22oJT88wHBcuAwp7fCvJ9VvS1iE4zg%22,%22nickname%22:%22Dhoopu%22,%22sex%22:1,%22province%22:%22%e4%b8%8a%e6%b5%b7%22,%22city%22:%22%e5%98%89%e5%ae%9a%22,%22country%22:%22%e4%b8%ad%e5%9b%bd%22,%22headimgurl%22:%22http://wx.qlogo.cn/mmopen/OM4v0FU2h0vtem9J2adoZcb6xMOp88ia5icQlb90m87DdbAVW20znQjMXA4K06ykGHpEVfEicnGFLKs5e8vBnzqXQ/0%22,%22privilege%22:[],%22unionid%22:null}&state=123
info格式化后的字段如下:
openid | 用户的唯一标识 |
---|---|
nickname | 用户昵称 |
sex | 用户的性别,值为1时是男性,值为2时是女性,值为0时是未知 |
province | 用户个人资料填写的省份 |
city | 普通用户个人资料填写的城市 |
country | 国家,如中国为CN |
headimgurl | 用户头像,最后一个数值代表正方形头像大小(有0、46、64、96、132数值可选,0代表640*640正方形头像),用户没有头像时该项为空 |
privilege | 用户特权信息,json 数组,如微信沃卡用户为(chinaunicom) |
state为初始带来的参数
流程图(基于微信网页授权原本流程)
开发者备注:
1、此接口请先配置/config.php
文件
2、微信公众平台里,在开发 - 接口权限 - 网页服务 - 网页帐号 - 网页授权获取用户基本信息”的配置选项中,修改授权回调域名。
微信网页授权封装接口——node.js版的更多相关文章
- 微信JS-API封装接口——node.js版
github:https://github.com/xjnotxj/wechat_interaction_jsapi Wechat JS-API接口 功能: 用于管理和获取微信 JSSDK 生产的ac ...
- 玩玩微信公众号Java版之六:微信网页授权
我们经常会访问一些网站,用微信登录的时候需要用到授权,那么微信网页授权是怎么一回事呢,一起来看看吧! 参考官方文档:https://mp.weixin.qq.com/wiki?t=resource ...
- 手把手实现微信网页授权和微信支付,附源代码(VUE and thinkPHP)
wechat github 手把手实现微信网页授权和微信支付,附源代码(VUE and thinkPHP) 概述 公众号开发是痛苦的,痛苦在好多问题开发者文档是没有提到的,是需要你猜的. 在开发过程中 ...
- 微信网页授权demo2
1.在微信公众号请求用户网页授权之前,开发者需要先到公众平台官网中的“开发 - 接口权限 - 网页服务 - 网页帐号 - 网页授权获取用户基本信息”的配置选项中,修改授权回调域名.请注意,这里填写的是 ...
- 微信网页授权,获取微信code,获取access_tocken,获取用户信息
微信开发中,经常有这样的需求:获得用户头像.绑定微信号给用户发信息.. 那么实现这些的前提就是授权! 1.配置安全回调域名: 在微信公众号请求用户网页授权之前,开发者需要先到公众平台官网中的“开发 ...
- Spring Security中实现微信网页授权
微信公众号提供了微信支付.微信优惠券.微信H5红包.微信红包封面等等促销工具来帮助我们的应用拉新保活.但是这些福利要想正确地发放到用户的手里就必须拿到用户特定的(微信应用)微信标识openid甚至是用 ...
- VueJs单页应用实现微信网页授权及微信分享功能
在实际开发中,无论是做PC端.WebApp端还是微信公众号等类型的项目的时候,或多或少都会涉及到微信相关的开发,最近公司项目要求实现微信网页授权,并获取微信用户基本信息的功能及微信分享的功能,现在总算 ...
- 服务号使用微信网页授权(H5应用等)
获取授权准备 AppId 服务号已经认证且获取到响应接口权限 设置网页授权域名 公众号设置 - 功能设置 - 网页授权域名.注意事项: 回调页面域名或路径需使用字母.数字及"-"的 ...
- 微信网页授权,错误40163,ios正确,安卓错误?
2017-07-29:结贴昨天研究了半天,也没解决,看到出错的http头里面有PHPSESSID,回头去修改了一下程序里的session部分的代码(这部分代码在微信网页授权之后),,也不知道是腾讯那边 ...
随机推荐
- jquery validate bootstrap 错误样式配置
$().ready(function () { $("#commentForm").validate({ errorPlacement: function (error, elem ...
- node调用phantomjs-node爬取复杂页面
什么是phantomjs phantomjs官网是这么说的,'整站测试,屏幕捕获,自动翻页,网络监控',目前比较流行用来爬取复杂的,难以通过api或正则匹配的页面,比如页面是通过异步加载.phanto ...
- 终结 finalize()和垃圾回收(garbage collection)
1.为什么要有finalize()方法? 假定你的对象(并非使用new)获得了一块"特殊"的内存区域,由于垃圾回收器只知道释放那些经由new分配的内存,所以他不知道该如何释放该对象 ...
- fiddler 抓取手机app请求包
今天心血来潮,也不知道怎么了,想着抓抓我们公司手机app的包看看,研究研究我们公司的接口,哎,我们api文档,我自己抓包看看吧.工具选择fiddler,理由免费,用着也舒服,手机设备 iPhone6 ...
- 初识Java,猜字游戏
import java.util.*; public class caizi{ public static void main(String[] args){ Scanner in=new Scann ...
- 程序设计入门——C语言 习题汇总
<img width="108" height="40" alt="浙江大学" src="http://imgsize.ph ...
- shell运算符之 关系运算符,算数运算符,布尔运算符,字符串运算符和文件测试运算符
shell运算符有很多,关系运算符,算数运算符,布尔运算符,字符串运算符和文件测试运算符 1,算术运算符 原声bash 不支持简单的算术运算,可以使用expr 工具 两点注意: 表达式和运算符之间要有 ...
- Mac实用操作技巧(三)
远程协助 很多场景下需要用到远程协助,比如你遇到了某个搞不定的bug需要他人帮助,但是别人却不在身边,这时就需要别人通过网络来远程协助你解决问题.在Windows下有不少优秀软件,比如TeamView ...
- DVWA笔记之三:CSRF
CSRF与XSS不同,它称为跨站请求伪造,它是利用其他页面的恶意脚本来加载访问或操作存在CSRF的漏洞的可信网站. 1.Low级别 核心代码如下: <?php if( isset( $_GET ...
- ReactiveCocoa源码解读(二)
上一篇解读了ReactiveCocoa的三个重要的类的底层实现,本篇继续. 一.RACMulticastConnection 1.应用 RACMulticastConnection: 用于当一个信号被 ...