一.接入
- vx填写服务器配置 URL Token
- 服务器返回 echostr *
- 依据接口文档实现业务逻辑
* echostr
参数 | 描述 |
---|---|
signature | 微信加密签名,signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。 |
timestamp | 时间戳 |
nonce | 随机数 |
echostr | 随机字符串 |
原样返回echostr参数内容,接入直接生效(直接返回echostr即可)
二.素材管理
- 临时素材
- 永久素材
步骤:1.上传素材到微信服务器 ( 首先获取 Access token)
2.服务器返回一个 ID
3.XML 中填写 ID
三.回复消息
- 引入 XML 解析模块
const convert = require('xml-js');
- 返回 回复类型的消息
四.网页授权
-
流程
第一步:用户同意授权,获取code]
第二步:通过code换取网页授权access_token
第三步:刷新access_token(如果需要
第四步:拉取用户信息(需scope为 snsapi_userinfo)]
-
两种 scope snsapi_userinfo、snsapi_base
- snsapi_base为scope发起的网页授权,是用来获取进入页面的用户的 openid 的,并且是静默授权并自动跳转到回调页的。用户无感知。
- snsapi_userinfo为scope发起的网页授权,是用来获取用户的基本信息的。但这种授权需要用户手动同意,并且由于用户同意过,所以无须关注,就可在授权后获取该用户的基本信息。
-
关于UnionID机制
如果开发者拥有多个移动应用、网站应用和公众帐号,可通过获取用户基本信息中的unionid来区分用户的唯一性,因为同一用户,对同一个微信开放平台下的不同应用(移动应用、网站应用和公众帐号),unionid是相同的。
-
关于特殊场景下的静默授权
-
上面已经提到,对于以snsapi_base为scope的网页授权,就静默授权的,用户无感知;
-
对于已关注公众号的用户,如果用户从公众号的会话或者自定义菜单进入本公众号的网页授权页,即使是scope为snsapi_userinfo,也是静默授权,用户无感知。
-
五. JS-SDK使用权限签名算法
-
jsapi_ticket
是公众号用于调用微信JS接口的临时票据。
正常情况下,jsapi_ticket的有效期为7200秒,通过access_token来获取
-
签名算法
-
参与签名的字段
jsapi_ticket (票据) ,
noncestr(随机字符串),
有效的jsapi_ticket, timestamp(时间戳),
url(当前网页的URL,不包含#及其后面部分)
-
对所有待签名参数按照字段名的ASCII 码从小到大排序(字典序)后,使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串 string1
-
对string1进行sha1签名,得到signature
-
六. JSSDK使用步骤
-
步骤一:绑定域名
先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。
备注:登录后可在“开发者中心”查看对应的接口权限。
-
步骤二:引入JS文件
在需要调用JS接口的页面引入如下JS文件,(支持https):http://res.wx.qq.com/open/js/jweixin-1.6.0.js
-
步骤三:通过config接口注入权限验证配置
-
步骤四:通过ready接口处理成功验证
-
步骤五:通过error接口处理失败验证
网友评论