微信支付扫码支付的两种模式区别与应用

微信支付产品划分

微信支付产品划分

微信支付产品划分成了公众号支付、app支付 、扫码支付 、刷卡支付、微信买单,因为把支付细分的不要不要的。在这里主要介绍一下微信支付挚友支付的两咱模式区别与应用。因为是本人的小博客,所以,也不用官方的时序图来讲这两种模式的区别,喜欢看官方文档的可以直接访问官方的链接:https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=6_1

模式一,简单的说是活码的,可以重用的。A客户扫完支付完,b客户还可以扫,还可以支付。模式二就不行,只能用一次。具体应用的话,可以理解为扫产品…..[先吃饭去~~再续]

模式二,相对于模式一来讲,这个码是一次码,一个客户扫码支付完,这个码就死了,不能用了。

部署好的测试:http://www.zuime.com/mpWxPayapi/example/native.php

微信支付的两种模式 模式一 模式 二

微信支付的两种模式 模式一 模式 二

微信支付集成点滴(坑坑)

微信支付集成相比支付宝集成来讲,还是坑多事多!微信支付、公众号、微信开放平台都有微信支付的入口,配置的事情让人一头雾水!建立了一个应用,开通了微信支付,配置的时候里面有个公众号的配置,这明明跟公众号没有关系,经过这两天的demo测试,发现,之前申请【醉么商城】的微信审核费算是多送了一份给腾讯!

准确的来讲,微信支付、公众号、微信开放平台的应用,可以相互关联,因为每次审核需要300元RMB,所以这也没有进行什么测试,给人感觉好绕。公众号的审核,或许与开放平台的应用割裂开了。现在又有一个小程序。

微信支付的坑坑之零:帐号乱七八糟的,各种平台各种帐号,还不通用

公众号、微信支付、开放平台的APP关联一套帐号,不要公众号+微信支付、开放平台APP+微信支付,这样子会产生两套微信支付帐号,管理非常不方便,而且容易出现【眩晕】的代码感觉。

微信支付的坑坑之一:长按二维码支付不能用,跟扫码支付两回事

http://www.zuime.com/mpWxPayapi/example/native.php

可以访问本人的demo感受一下。如果用户在微信里打开了界面,微信支付是无法呼出的。长按二维码之后,微信提示不支持长按二维码支付。这给公众号支付腾了空间,给H5支付腾了空间。有的时候,控制权在他人手上,他人就可以玩着花样当【产品】!换一个姿势一个产品~~

看看微信支付的产品线:扫码支付、公众号支付、APP支付,H5支付,申请了公众号支付,自动带有扫码支付;申请了APP支付,自动带了扫码支付,但是公众号支付与APP支付还不是一回事!崩溃了吧!!主体过期没有再认证的话,扫码支付还可以用,但是公众号支付(js呼出微信支付功能又没有!因为openid无法直接拿到~~通过回发信息绑定绕一下也是能拿到openid,只是会给客户增加一个绑定环节,这300RMB感觉还是不要省)!

微信支付的坑坑之二:demo代码坑.net,php的demo就没有此坑

cert文件需要在vs属性中改成复制到生成目录

默认不用的代理ip与端口没有去掉

引用 的dll放在了生成目录bin里,一清理整个项目就的引用就黄掉了。

微信支付的坑坑之三:扫码支付状态之页面无回调机制

因此整个码就是自己的系统调接口生成好,用户扫码后,网页得不到主动通知。支付成功与否的状态,需要通过异步不断的向后台请求支付结果,才能做出响应!不然,整个页面就是个SB一样一动不动的。相对于支付宝支付来说,生成码,引导客户支付都是支付宝完成的,支付完之后,支付宝有回调通知。微信支付这么一搞,生成码不管,状态结果还要自己想办法去轮出来。我也是醉了!

本想突破一下扫码支付的限制,试了试生成的链接,直接长按二维码之后,微信是有无权限的提示,不过,直接在聊天窗口里访问 weixin://wxpay/bizpayurl?pr=********,还是可以支付的,这个在与公众号有互动的情况下到是可以生成图文支付链接,只是感觉体验上很别扭。还是得向微信交300元过路费。

搭建的扫码demo如下

http://www.zuime.com/mpWxPayapi/example/native.php

输出了微信扫码的具体内容,也就是微信的预支付交易单链接。只有微信自己识别!为了让小伙伴能体验,扫码金额0.01元,随便体验吧!

小结一下:如果打算用微信支付,认证完公众号,然后在公众号里申请微信支付,再申请开通H5权限就好了。 无需跑开放平台再申请一个APP+微信支付!毕竟H5跑在浏览器里,浏览器就如同一个第三方的APP,再回到微信,这300元,应该省吧~~如果要用到微信登陆,可能这300元还省不下来~~

 

 

谷歌浏览器手机版的Display:none block问题Bug处理记录

Google Chrome手机版v44,测试功能的时候发现菜单ul,li不显示,电脑上使用桌面版进行F12进行手机模拟机调试,一切都是正常的。Debug代码,尝试了多种方案!对比同事正常的页面,拿微信自带的浏览器试,没有此问题。但是作为要给客户使用的产品,还是想把问题解决掉。但是这个问题比较诡异!

作为经验的驱使,我尝试,show,hide进行了重新绘制,结果Bug还是存在,Display:none之后再block的元素li还是出现莫名其妙的不显示。做为喜欢使用chrome的小伙伴,在桌面上完整调试后,还出现此问题,着实有些不爽。

代码方案进行了调试,样式输出核对,都发现不了问题。最后,脑残式的发现,li的元素个数似乎有些少。估计号称【速度、性能】的浏览器工程师,可能会出现页面优化考虑,将不在显示区的不重绘!这完全是一直直觉的猜测!甚至自己都觉得可能、大概 、也许,不过试了这么多招,再试一下。

增加几个占位的li之后,既然解决了问题。于是,接着强制将样式去掉,再将绑定上的click事件卸载,模拟成Very thing is normal的情况。整体上功能像是正常的。

再以Chrome block bug做为关键词查询,发现,绝对定位这块,Chrome 40左右的版本是有类似的问题。目前使用的桌面版是59。自己的手机是44。

没想到被谷歌坑到了~