微信公众号支付开发的过程小结

微信公众号支付开发的过程小结

  

 第一步,已知appid和redirect_uri(回调地址), 向微信后台得到code, 微信后台按设定回调地址返回code

https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxdxxxx99x2&redirect_uri=http://wx.dingXXX.net/H5/Load/Usercard.html&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect

第二步:已知code(和已知的appid、appsecret), 通过网页授权,获取用户信息(openid和access_token)。

        注:通过openid可以确定付款人(每个微信用户在关注的不同公众号时,openid是不同的)

过程见:https://mp.weixin.qq.com/wiki/17/c0f37d5704f0b64713d5d2c37b468d75.html

第三步:已知openid, 调用统一下单接口(UnifiedOrder)请求订单

        订单包含生成的订单号(out_trade_no:商户号加当前时间生成)、金额(total_fee)、回调地址(notify_url)等重要信息

返回:统一下单接口返回的prepay_id

第四步: 获取H5调起JS API参数,用于h5界面调用JSAPI发起支付调用。

    已知: prepay_id加上签名后,获取jspai参数。

第五步:H5界面调起JSAPI

    已知:JSAPI参数,调起支付API,由微信后台完成输入密码等支付操作。

第六步:支付完成后,微信会把相关支付结果和用户信息发送给商户,商户需要接收处理,并返回应答。


微擎是一款基于PHP的开源微信公众号管理系统,可以帮助开发者快速搭建微信公众号应用。本篇将介绍微擎开发的基础知识,包括环境搭建、目录结构、配置文件、路由规则、模块开发等内容。 ### 环境搭建 微擎的开发需要先搭建好开发环境,包括PHP、MySQL、Apache或Nginx等。具体步骤可以参考微擎的官方文档,建议使用PHP7及以上版本。 ### 目录结构 微擎的目录结构如下: ``` addons/ // 存放插件 api/ // 存放接口文件 app/ // 存放前台模块 attachment/ // 存放上传的文件 framework/ // 存放框架核心文件 payment/ // 存放支付相关文件 static/ // 存放静态资源文件 template/ // 存放前台模板文件 upgrade/ // 存放升级相关文件 wap/ // 存放手机端模块 we7/ // 微擎的核心目录 favicon.ico // 网站图标 index.php // 入口文件 ``` ### 配置文件 微擎的配置文件主要有两个:config.php和database.php,前者用于配置微擎的基础信息,后者用于配置数据库连接信息。 config.php的配置项包括: - `setting`:微擎基础设置,如网站名称、网站域名、微信公众号AppID等; - `site`:网站设置,如首页模板、错误页面模板、静态资源路径等; - `wxapp`:小程序设置,如小程序名称、小程序AppID、小程序Secret等; - `oauth`:公众号设置,如公众号AppID、公众号Secret等; - `remote`:远程附件设置,如附件存储方式、FTP信息等; - `app`:应用设置,如开启模块、插件管理等; - `global`:全局设置,如错误处理方式、调试模式等。 database.php的配置项包括: - `master`:主数据库连接信息,如数据库类型、主机地址、数据库用户名、密码等; - `slave`:从数据库连接信息,可选; - `tablepre`:数据表前缀。 ### 路由规则 微擎的路由规则遵循MVC模式,每个请求都会依据路由规则被分配到相应的控制器和方法中。微擎的路由规则主要有两种: - URL规则:URL规则是通过URL中的参数来确定控制器和方法的,如`index.php?c=site&a=entry&m=my_module&do=my_page`; - Rewrite规则:Rewrite规则通过修改服务器配置文件,将URL中的参数转换为美观的URL,如`/my_module/my_page`。 ### 模块开发 微擎的模块开发主要包括前台模块和后台模块两种。前台模块用于展示内容,后台模块用于管理内容。 模块的目录结构如下: ``` my_module/ ├── controller/ │ ├── index.php │ └── my_page.php ├── model/ │ └── my_page.php ├── template/ │ ├── index.html │ └── my_page.html ├── module.php └── version.php ``` 其中,controller目录存放控制器文件,model目录存放模型文件,template目录存放模板文件,module.php是模块的基本信息,version.php是模块的版本信息。 控制器文件中定义了控制器和方法,模型文件中定义了数据操作方法,模板文件中定义了页面布局和样式。模块的基本信息包括模块名称、模块描述、模块图标等,版本信息包括版本号、升级文件等。 ### 小结 本篇介绍了微擎开发的基础知识,包括环境搭建、目录结构、配置文件、路由规则、模块开发等内容。掌握这些知识是进行微擎开发的基础,希望可以帮助到初学者。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值