关于App集成微信支付调起微信及回调App问题

新手学堂09

关于App集成微信支付调起微信及回调App问题,第1张

按照上面的支付流程会出现 App -> 微信 -> 支付 -> 点击 完成 -> safari访问redirect_url设置的URL,这种流程其实用户体验是有点糟糕的,我们期望是 App -> 微信 -> 支付 -> 点击 完成 -> App访问redirect_url设置的URL

问题分析到上面已经非常明了了,无非就是拦截处理,下面讲讲具体的实施。

根据上面的分析解决的思路应该非常的清晰

拦截请求

到这一步已经成功了一大半了,你会发现现在支付成功后能返回App了但是返回的时候webView是白屏。白屏其实就是网页没有任何请求导致的,接下来我们就要使用上步提前记录好后台给的redirect_url的url了。

在wkWebView接收通知,重定向wk,刷新页面

微信公司平台帐号注册后官方首页很简单,没有导航栏目页面新建等功能。需要通过三方软件与微信接口做二次开发。首先要在现在微信开个接口,这是要工商局认证的。

最近一个项目用手机上的浏览器(不是微信浏览器)浏览html5网页时,看到有的网站点击“微信支付”时,直接打开了微信进行支付(也就是在浏览器直接调用微信),这个是怎么做到的?

比如页面上有个文字链接:微信支付,点击之后就自动调取微信APP了,而且我不是用微信浏览器打开的网页。最新实用的微信H5手机网站支付源码实例。

效果如下:

完整代码如下:即使在Safari中,也是可以点击一个链接到达微信支付界面,只是用户支付完了以后,目前还没有方法再返回到Safari。 如果是自己开发的app,当然更没有任何问题了,可以实现和native app一样的效果。

 源码如下:

<html> 

<head> 

<meta http-equiv="content-type" content="text/html;charset=utf8"/> 

<meta id="viewport" name="viewport" content="width=device-width; initial-scale=10; maximum-scale=1; user-scalable=no;" /> 

body,p,ul,li,h1,h2,form,input{margin:0;padding:0;} 

h1,h2{font-size:100%;} 

ul{list-style:none;} 

body{-webkit-user-select:none;-webkit-text-size-adjust:none;font-family:Helvetica;background:#ECECEC;} 

html,body{height:100%;} 

a,button,input,img{-webkit-touch-callout:none;outline:none;} 

a{text-decoration:none;} 

hide{display:none!important;} 

cf:after{content:"";display:block;height:0;clear:both;visibility:hidden;} 

a[class="btn"]{display:block;height:42px;line-height:42px;color:#FFFFFF;text-align:center;border-radius:5px;} 

btn-blue{background:#3D87C3;border:1px solid #1C5E93;} 

btn-green{background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0, #43C750), color-stop(1, #31AB40));border:1px solid #2E993C;box-shadow:0 1px 0 0 #69D273 inset;} 

charge{font-family:Helvetica;padding-bottom:10px;-webkit-user-select:none;} 

charge h1{height:44px;line-height:44px;color:#FFFFFF;background:#3D87C3;text-align:center;font-size:20px;-webkit-box-sizing:border-box;box-sizing:border-box;} 

charge h2{font-size:14px;color:#777777;margin:5px 0;text-align:center;} 

charge content{padding:10px 12px;} 

charge select li{position:relative;display:block;float:left;width:100%;margin-right:2%;height:150px;line-height:150px;text-align:center;border:1px solid #BBBBBB;color:#666666;font-size:16px;margin-bottom:5px;border-radius:3px;background-color:#FFFFFF;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;} 

charge price{border-bottom:1px dashed #C9C9C9;padding:10px 10px 15px;margin-bottom:20px;color:#666666;font-size:12px;} 

charge price strong{font-weight:normal;color:#EE6209;font-size:26px;font-family:Helvetica;} 

charge showaddr{border:1px dashed #C9C9C9;padding:10px 10px 15px;margin-bottom:20px;color:#666666;font-size:12px;text-align:center;} 

charge showaddr strong{font-weight:normal;color:#9900FF;font-size:26px;font-family:Helvetica;} 

苹果手机正常支付的时候,受苹果正常的影响,是必须在appstore来支付的,此时不能使用包括微信支付在内的任何第三方支付方式;

建议可以使用苹果手机的safari浏览器打开相应的购买页面,这时就可以使用微信支付来进行购买了,目前微信支付还可以打九五折哦