关于微信支付的一个坑,在此记录一下。

 

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sctzkj/article/details/72681882

由于项目需要,

必须要做微信支付。

以前只做过支付宝,没做过微信。

就在官方下载了DEMO研究。

一切都很顺利,顺利完成。

结果遇到个问题。

只有自己的微信能够实现支付。

其他帐号均提示 “下单帐号与支付帐号不一致”,并且报错。

于是就研究。

扫描二维码关注公众号,回复: 4522511 查看本文章

发现错误中提示wxdata 有参数为NULL。

再进一步研究,

发现没有获取到 OPENID .

于是通过snsapi_base 方式获取openid。

自定义菜单链接 设置为https://open.weixin.qq.com/connect/oauth2/authorize?appid=*****&redirect_uri=http://****/wx_getback.aspx?npage=m_login&response_type=code&scope=snsapi_base&state=1#wechat_redirect

利用wx_getback 页面获取openid 并 通过 npage 参数 跳转到自己需要的页面。

openid 通过session 进行传输。

用户每次进入都由wx_getback跳转并获取openid。

就这样搞定了。

一定要每次支付的时候都是session里面新获取的openid,不使用已存入数据表的openid(不然有可能会报下单账号与支付账号不一致的问题),并且支付的微信公众号账号和获取openid的公众号要一致。

欢迎遇到相同问题的朋友一起交流!

转载地址:

https://blog.csdn.net/sctzkj/article/details/72681882

猜你喜欢

转载自blog.csdn.net/qq_31879707/article/details/83311088