微信(公众号、小程序)开发
一、开发前准备
1)准备一个服务器,一个已经备案的域名(小程序开发必须使用:https)
2)涉及到微信支付的,需提前在微信支付商户平台,申请商户号和秘钥
3)如果需要将微信公众号或微信小程序相互打通,需提前在微信开放平台注册账号,并将微信公众号或小程序绑定在一起(此时才会获取到unionid)
二、配置
1)开发配置
操作路径:微信公众平台 —— 开发 —— 基本配置
操作页面
注意:如果是进行公众号网页开发以上配置不是必须的
2)公众号设置
操作路径:微信公众平台 —— 设置 —— 公众号配置
操作页面
注意:以上设置,只有在进行公众号网页开发的时候需要,小程序开发不需要
三、开发
1)微信公众号的开发
微信公众号开发要分为:与微信服务器交互的开发和不与微信服务器交互的开发。与微信服务器交互的开发,就是微信服务器主动与你的服务器通讯,以响应你的请求。例如,你的用户向你的公众号发送一条信息,你的服务器接受到信息后自动发送一条回复消息。
对于与微信服务器交互的开发,首先需要验证微信服务器。在上面的开发配置处,我们已经配置了服务器地址。此服务器地址就是验证微信服务器时,微信服务器需要调用的地址。验证微信服务器时,微信服务器会向此地址发送POST请求,传递一些参数,此地址接受到参数后,需要作出相应的处理。
下面以ThinkPHP的案例来说明
代码样图
代码样图
注意:不需要与微信服务器交互的开发,以上内容可以省略
不管是否需要与微信服务器交互,access_token是必不可少的。因为access_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用access_token。因此在调用其他接口之前,需要先调用接口获取access_token。
获取access_token,可以调用如下接口:
请求链接
参数说明
返回结果
注意:由于access_token的有效期目前为2个小时,所以在获取到access_token后可以将其以文件的形式保存起来,使用时,先判断保存的access_token是否过期,没有过期则直接使用,过期了则重新调用接口获取新的access_token并保存到文件中。
access_token获取之后,其他接口即可按开发文档直接调用。
2)小程序开发
小程序开发相对于公众号开发而言是比较简单的,其难点就是调起授权登录窗,获取用户信息。那么如何获取用户的登录信息呢?
具体步骤如下:
调用wx.login(OBJECT)接口,获取登录凭证(code),调用后台自己的接口,用code 换取 session_key,获取到session_key后,使用自己的加密方式生成新的session_key,将其返回给客户端,客户端接收到新的session_key后将其保存在本地。
进入其他需要用户信息的页面,先调用wx.checkSession(OBJECT)接口,检测用户登录态是否失效,如果用户登录态失效了,需要重新操作第一步,获取新的session_key
如果登录态没有失效,将之前本地已经保存的session_key传至后台,后台接收到后,通过session_key获取用户信息
3)微信支付开发
微信开发数据的传输使用的是XML格式,因此在接受数据和发送数据时,需要进行XML的封装和解析。微信官方Demo中已经封装相关方法,大家可以根据需要选择版本。
扫码支付。微信扫码支付,有两种模式,模式一不需要预先指定支付用户的openid,而模式二需要预先指定用户的openid。对于模式一,需要先在微信支付商户后台,配置扫码回调地址,然后再根据商品或订单信息生成二维码。微信扫码时,微信服务器会将商品或订单信息及扫码人的openid推送到扫码回调地址。模式一和模式二的不同之处在于获取openid的方式,其他的步骤基本一样,都是调用统一下单API。
转载于:https://www.cnblogs.com/zytrue/p/8547674.html
微信(公众号、小程序)开发相关推荐
- .NET Core 微信公众号小程序6种获取UnionID方法,你知道哪几种?
前言 获取UnionID是开发微信公众号/小程序中很有必要的一个环节,特别是针对一个公司拥有多个公众号小程序而推出的机制,实现打通账户一体化,用UnionID来区分多平台的唯一性. 官方的解释:如果开 ...
- 微信,支付宝支付,微信公众号小程序授权等
微信,支付宝支付,微信公众号小程序授权等 前言 微信支付 微信授权 maven依赖(更新) 前言 最近在公司也做了很多移动端项目,如今微信公众号,小程序又特别火爆,免不了要接触支付,授权这类的业务需求 ...
- crmeb打通版开源微信公众号小程序商城框架源码
crmeb是什么? crmeb是一套客户管理加电商营销系统,基于ThinkPhp6.0+Vue采用前后端分离模式开发,前后台都具有非常标准的API接口,是一款非常优秀的开源微信端及小程序商城框架,能够 ...
- python爬虫爬取微信公众号小程序信息
python爬虫爬取微信公众号小程序信息 爬取内容 某汽车维修信息提供的维修店名称,地点以及电话(手机)号码 爬取步骤 啥也别管,先抓包看看,在这里,博主使用的抓包软件是charles 抓包:将网络传 ...
- 微信公众号小程序第三方获取授权流程
概述 这是一个类似平时的C-S模型,但在这模型中有一个问题,服务器能够获取到客户端的客户唯一标识,在微信中应该就是微信号.应该是出于保护用户隐私的目的,微信选择了使用openid来代替微信号作为唯一标 ...
- 微信公众号小程序外卖返利分销系统美团饿了么外卖cps软件源码
饿了么美团外卖返利程序对接公众号发单机器人分销系统返利源码 美团/饿了么外卖CPS联盟返利公众号小程序裂变核心源码 源代码地址 http://y.mybei.cn 成品展示 截图 步骤 下载以上源代码 ...
- 微信公众号/小程序注册认证
本篇文章主要从注册微信小程序的角度讲如何注册小程序账号. 作为一名小程序开发者,可能您不用操心注册账号和微信认证的事情,这种事情一般可以交由客户去注册. 但当您的客户需要您自己去注册账号时,您可能需要 ...
- 微信公众号 小程序 开放平台是什么鬼
三个东西,公众号,小程序,微信开放平台 公众号,小程序,微信开放平台都要申请及认证 1)公众号申请需要填写企业详情,对公小额转帐验证会退回,不要钱,审核营业资质.最后认证费用300 2)如果你要开通 ...
- 如何对接微信公众号/小程序的在线客服
第一步:下载在线客服软件 二.开启微信客服功能并扫码绑定 第一次登进后默认是没有微信客服项目的,需要在左边先找到"微信客服"模块,然后"开启客服功能"(点击按钮 ...
- crmeb一款最适合二次开发的开源微信公众号小程序框架
crmeb是什么? crmeb是一套客户管理加电商营销系统,基于ThinkPhp6.0+Vue采用前后端分离模式开发,前后台都具有非常标准的API接口,是一款非常优秀的开源微信端及小程序商城框架,能够 ...
最新文章
- 在命令行中的vim编辑器加上行号
- php中时差怎么改,我的PHP时差功能可以改进吗?
- 【原】webpack--loaders,主要解释为什么需要loaders和注意事项
- connectionstring mysql_Entity Framework 6 自定义连接字符串ConnectionString连接MySQL
- uint8_t / uint16_t / uint32_t /uint64_t 有什么区别?
- Linux系统安装yum源报错256,Redhat Linux RHEL6配置本地YUM源及错误处理
- python合并csv文件、并利用结果进行计算_python合并csv文件
- 有哪些网站社区可以看原创平面设计大师作品?
- Linux内存管理 -- smaps讲解
- 手把手图文教你从Eclipse项目迁移Android Studio
- oracle--merge
- 工商银行c语言笔试题,【中国工商银行研发软件笔试试题及答案】 - 面试网
- ICPC North America Qualifier 2017 B.Bumped! (分层图 + spfa)
- matlab留白,matlab作图导出为PDF去除留白插入latex
- 走进Dubbo——RPC框架简介
- 一个简单的ADFR的re-docking教程
- linux shell 快速掌握
- 嘚吧嘚java的发展历史
- Ag-Grid学习-angular8
- 河海大学计算机专业有哪些,南京师范大学和河海大学的计算机专业
热门文章
- ERP实施-客供料管理(受托加工、来料加工)
- PyQt5 使用QSqlDatabase连接Mysql数据库时Driver not loaded Driver not loaded
- 固定簇半径的分簇协议HEED matlab代码
- linux基本命令之文件浏览(cat,more,less,tail,head),文件操作命令(cp,mv,rm,find)
- Starling Feathers Controls ButtonGroup
- 什么样的热设计是好的热设计?
- tf.argmax()的用法
- mysql重复记录大于十的数据库_MySQL专题10之MySQL序列使用、MySQL处理重复数据、MySQL以及SQL的注入...
- 腾讯御安全加固保护简单分析
- 使用LabVIEW读取微软Excel的数据