微信开发流程
来源:互联网 发布:东莞网络电视剧 编辑:程序博客网 时间:2024/05/01 01:15
微信开发流程
1.微信对接自动回复
登陆微信公众平台 (https://mp.weixin.qq.com)
因为自带配置功能有限所以不建议用
我们开发采用开发者配置
开发->开发者工具->公众平台测试账号->接入指南(按照指南步骤操作即可);
(1)填写服务器信息
按要求填写即可
(2)验证服务器有效性
开发者提交信息后,微信服务器将发送GET请求到服务器地址URL上,GET请求携带四个参数
Signature
微信加密签名
timestamp
时间戳
nonce
随机数
echostr
随机字符串
加密/校验流程
a.将token timestamp noce 三个参数进行字典序排序
b.将三个参数字符串拼成一个字符串进行sha1加密
c.开发者获得加密后的字符串可与signature对比,表示该请求来源于微信。
接口信息配置->消息接口使用指南->开始开发->接入指南->将验证服务器有效性的文档下载下来(将文档上传到服务器进行验证);
(3)消息自动回复
修改接口配置信息(填写URL和token)
Token要和接口文档中的token参数一致
调用消息自动回复接口即可实
(4)获取token
参看接口调用请求说明根据链接地址即可获得
https//api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPCECRT
需要参数APPID APPSECRET
返回一个地址,访问地址即可获得token和过期时间
(5) 创建菜单
自定义菜单->自定义菜单创建接口
http请求方式post请求(使用https协议)
https//api.weixin.qq.com/cgi-bin/menu/create?assess_token=ACCESS_TOKEN
POST请求
查看示例文档调用接口即可实现
文件素材的上传
调用接口
https//api.weixin.qq.com/cgi-bin/media/upload?assess_token=ACCESS_TOKEN&type=TYPE
同样是使用POST请求
以上就是一些接口的简单调用
接下来我们去看看网页授权用户基本信息
首先填写授权回调页面的域名(测试号可以是ip或域名,正式公众号只能是域名)
第一步:用户同意授权获取code
调用的接口地址
https://open.weixin.qq.com/connect/outh2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code=&scope=SCOPE&state=STATE
$redirect_uri 用户授权后重定向的连接地址(user.php)
Scope有俩个参数snsapi_base(不弹出授权呢页面直接跳转只能获取用户openid)snsapi_userinfo(弹出授权页面可获取到用户的详细信息)
然后再user.php页面用$_GET[‘code’];取出code
接着调用接口
https://open.weixin.qq.com/connect/oauth2/access_token?appid=APPID&secret=secret&code=CODE&grant_type=authorization_code
然后用file_get_contents();请求这个连接正确会返回json数据
其中又有一个access_token;还有下一步骤中要用到openid
然后再用get方式请求下面的链接
https://api.weixin.qq.com/sns/userinfo?access_toke=ACCESS_TOKE&openid=OPENID&lang=zh_CN;
access_toke上一步中获取到的access_toke
Openid上一步中获取到的openid
这样我们的授权就完成了用户信息也取到了
- 微信开发 流程
- 微信开发流程
- 微信开发流程
- 微信开发流程
- 微信开发流程
- 微信支付开发流程
- 微信支付开发流程
- 微信简单开发流程
- 微信简单开发流程
- 微信支付开发流程
- 微信模板开发及开发流程
- 微信支付接口开发流程
- 微信开发流程梳理(一)
- iOS之“微信支付”开发流程
- android微信支付开发流程
- 微信开发流程及问题
- 微信公众号开发流程
- iOS 微信支付 开发流程
- 从2级C中了解数据库基础
- 环境传感器
- 分段函数求值
- 六、TIM普通定时器
- android中加载Gif图片
- 微信开发流程
- 数据库备份和还原策略优缺点浅谈
- 高通8937平台手机关机概率卡住问题分析
- iOS编程的几种传值方式
- beyond compare 对class文件反编译及比较
- 摧毁一个学生有多简单?
- svn commit 时提示 Commit failed (details follow) Unable to create pristine install stream 系统找不到指定的路径
- win10+64位+python3.4安装scrapy
- Mockplus演示和分享原型设计的8种方式