场景:
用户通过消息或扫描二维码在微信内打开网页。
开发步骤:
https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_3
没有什么比看官方文档更直接的了。
但是步骤中有提到获取openId的步骤,对于没有开发过微信公众号的朋友来说就有点一头雾水了:怎么获取?
获取openId的步骤: https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842
若只需要openId不需要用户资料的话,我们只用到静默授权就好
文档中有提到获取到的access_token必须保存在服务器,所以这一步前端朋友需要交给服务端来做。我在这项目中的做法是调用后台接口获得openId,然后再将openId作为参数或者header加上订单Id来获取 WeixinJSBridge.invoke() 的参数,再写好回跳地址,就完成了。
关于非微信内置浏览器打开H5页面使用微信支付的总结:
就是请求服务端接口返回的URL跳转过去(没了)。
要保证公众平台的H5支付域名配置,请求域名 和 redirect_url的域名 三者相同
需要注意的是获取到url后不要使用window.location.href的方式跳转,而要用a标签的方式跳转,前者会导致referer获取不到。还有就是如果设置了 <meta name="referrer" content="never"> 来做其他用的,那可能也会出些许问题。
(还有其他什么坑我没发现的话非常期待您能评论指出或者私信我)
PS:微信交流社区真的有存在的必要吗?问题下面各种带‘官’的账号回答甩一个官方文档地址或者复制里面的一段话??