首先我先来说明微信h5和微信公众号支付的区别
微信H5指的是微信网页端支付。微信公众号支付指的是微信浏览器内发起微信支付,这种支付都是属于微信公众号支付。俩者本质的区别就是H5不需要微信网页授权,但是微信公众号支付需要网页授权。网页授权主要目的是啥,想必小伙伴们已经猜到了,就是获取openid。所以这俩个的区别就在于像微信端发起的时候是否传送一个openid的参数
对了 忘了给你们介绍beecloud 这是一个非常好用的秒支付sdk。可以去百度查询beecloud深入学习下,支持很多种支付方式,非常方便
了解这些区别以后,我们就开始正式的实践项目中。在实践中,我会给大家详细的代码示例,以方便大家更好的上手。

首先是微信H5
https://www.beecloud.cn/doc/这是beecloud的官方开发文档,文档对于支付流程讲的非常清楚,我基本不用补充。我补充的只是官方文档没有给出明确说明的参数。
微信h5就是秒支付button开发
必填参数我就不多做说明


只说一下这个参数 大眼一看这是个IP地址 但是到底是个什么IP地址 官网并没有说
这就是我要说的坑,这个IP经过我的大量实验我发现这是一个发起支付端的用户IP,
这当时害苦了我。
还有一些选填参数


但是我发现这根本就是必传参数,因为是网页支付,支付以后就必须有一个回调网页,这个不是beecloud规定的。这是微信那厮规定的,不然就会报商家配置的参数不存在。这当时也害的我,后来没办法,硬着头皮去看了微信的官方文档才发现的
这些参数都传对了,接下俩就交给beecloud处理了。

注意微信H5支付要在微信商户平台里配个微信H5的域名地址。不然没有权限

2.微信公众号
公众号支付在前面已经做了说明比较大的区别就是网页授权
网页授权我们用到另一款非常好用的sdk,就是easychat,说他好用,是因为代码量少,但是论起坑来说,他的文档做的是真的差,唯一的好处就是源码比较简单,看了源码填起坑来比较容易。
https://www.easywechat.com/docs这是官方文档
我们直接打开网页授权

授权主要用到这个类和方法


其中就厉害的坑就是
微信授权的过程 是首先你请求微信接口,微信会给你一个code,然后你拿这code再去找微信换取openid,小伙伴们肯定也会发现,这个code难道不需要了吗。当然不是,这个code是至关重要的一环,只是这个文档没有介绍,这就是巨坑的地方,不说了直接上代码

小伙伴会发现这个code你同样也没用到,只是传了进来。别急 ,我们来看一下源码

历经千辛万苦,我终于发现,他会用get去接收这个code,并且名字必须是code,换做其他变量就不行。小伙伴们有没有惊呆。所以这就是为啥get方法传进来code
现在openid拿到了,就可以根据beecloud官方文档知道进入支付,把人家要的参数一个不拉的传过去,接下里就没我们啥事了。

注意:公众号和h5一样,也需要去商户平台配置域名,不过公众号配置的是支付地址,也就是你支付的页面文件位置,且要用/结尾,并且只能配置5个。这个一定要记得哦。根据自己的业务合理运用哦

使用beecloud和easychat 做微信H5 微信公众号支付遇到的坑相关推荐

  1. 微信公众号支付的那些坑

    在之前记录了一下做微信公众号支付的过程,但是有些混乱,之前做的内个也不是直接接的微信官方,而是转接的别人在接的微信官方,他们赚个手续费,在这之后因为app停用了一段时间,上游公司把我们的appid给关 ...

  2. 【微信开发】---- 公众号支付

    公众号支付就是在微信里面的H5页面唤起微信支付,不用扫码即可付款的功能.做这个功能首先要明确的就是,只有和商户号mch_id匹配的appid才能成功支付.商户号在注册成功的时候就会将相关信息发送到邮箱 ...

  3. 对接银联商务微信公众号支付遇到的坑

    微信公众号支付和微信扫码支付在 支付结果通知上有很大的区别,公众号支付主要是以异步通知去确定支付结果,也可以通过查询接口,而扫码支付通常调用查询接口去查询支付状态.因而,公众号支付的异步通知是一个需要 ...

  4. uniapp之APP/微信小程序/公众号支付

    涉及到微信支付的都需要从后端接口获取支付配置信息: await this.$http({apiName:"wxPayConfig",type:"POST",da ...

  5. 微信支付V3==>公众号支付、踩坑、简单记录

    开始! 接支付前,看了微信支付文档(有点乱),也看了一些文章,都是假V3,点进去看demo还是XML格式,坑,不过多描述. V3接起来整体还是有些坑的,不过坑不深,这里简单记录一下,避免忘了再踩! 首 ...

  6. 微信H5、公众号开发,域名重定向

    一. 在公众号中绑定域名 二.本地host映射域名 文件地址:C:\Windows\System32\drivers\etc(vscode打开,地址.域名不可加端口号) 127.0.0.1 <域 ...

  7. vue 微信公众号支付接口_基于vue的h5项目之支付宝支付与微信支付

    本文仅记录基于vue开发h5项目过程中使用支付宝和微信支付过程中的重点与槽点,仅为前端部分,如有疏漏不正之处,请于文末评论探讨.注意:标红部分灰常重要,仔细阅读官方文档非常重要,耐心非常重要,细心非常 ...

  8. h5如何做微信公众号支付

    上个周老大让我去做微信公众号支付,因为之前没有做过,所以看了一下微信公众号支付.其实前端做微信公众号很简单.废话不多说,直接先说一下思路,首先做支付需要前端或者后台去获取微信的code,这里是由我去做 ...

  9. java微信公众号支付开发平台_Java微信公众平台开发之公众号支付(微信内H5调起支付)...

    官方文档 准备工作:已通过微信认证的公众号,必须通过ICP备案域名(否则会报支付失败) 借鉴了很多大神的文章,在此先谢过了 整个支付流程,看懂就很好写了 一.设置支付目录 在微信公众平台设置您的公众号 ...

最新文章

  1. c语言文件 加载内存吗,把文件中的数据加载到内存进行查找C语言实现.docx
  2. BCH独立日最好的礼物——Token发行已实现
  3. 套接字编程(VC_Win32)
  4. python学习笔记三一 函数学习
  5. 【STM32】GPIO相关函数和类型
  6. 【Python函数】——sort,sorted
  7. 那些年,登山徒步记录,立贴
  8. tf.Variable、tf.get_variable、tf.variable_scope以及tf.name_scope
  9. java c 引用区别_Java的引用c++的引用和C指针的区别
  10. 多套 企业/工厂/超市/仓库库存管理系统源码 工具软件程序源代码
  11. MATLAB常用求导和求偏导函数
  12. 使用虚幻4开发HoloLens的准备工作
  13. TCP segment of a reassembled PDU
  14. Angular cdk 学习之 drag-drop
  15. <C++>运算符重载进阶之左移运算符,输出成员属性一步到位
  16. PyTorch搭建双向LSTM实现时间序列预测(负荷预测)
  17. php文件断点上传文件,php大文件上传支持断点上传
  18. python import注意事项
  19. 云栖大会100位顶级大咖演讲PPT+视频全分享
  20. SQL SERVER 20005 分布式事务配置

热门文章

  1. Vuforia的学习(一)---Vuforia的介绍
  2. STM32最新是10个案例及操作
  3. 2.1.1 Python面向对象三大特性
  4. 【子桓说】西安女硕士:我挺感谢新媒体的
  5. 一个数如果恰好等于它的因子之和,这个数就称为完数。例如6=1+2+3.编程 找出1000以内的所有完数
  6. Ghost还原出错An internal inconsistency has been detected
  7. Go实战--golang中使用gRPC和Protobuf实现高性能api(golang/protobuf、google.golang.org/grpc)
  8. SID # 和NID #(系统识别码和网络识别码)
  9. Effective Modern C++[实践]->优先使用nullptr,而非0或NULL
  10. .NetCore搭建的文件服务有些文件不能下载