前言:之前一直为web跳转微信支付二搜索百度,居然没有得到想要的结果,所以现在给出以下解决方案。

其实微信的H5支付就是可以解决这个问题的

1,公众号首先开通H5支付;

2,通过微信“统一支付订单”api请求

#1.生成字符串:
appid=wx12a881c60697&attach=sd&body=测试&device_info=wx&goods_tag=asdsd&mch_id=128521402&nonce_str=8991731&notify_url=http://www.hhh.com&out_trade_no=20180906101016&sign_type=MD5&spbill_create_ip=58.42.243.5&time_expire=20180908101133&time_start=20180906101133&total_fee=1&trade_type=MWEB#2.连接商户key:
appid=wx12a881c60697&attach=sd&body=测试&device_info=wx&goods_tag=asdsd&mch_id=128521402&nonce_str=8991731&notify_url=http://www.hhh.com&out_trade_no=20180906101016&sign_type=MD5&spbill_create_ip=58.42.243.5&time_expire=20180908101133&time_start=20180906101133&total_fee=1&trade_type=MWEB&key=987987987asdfdasf#3.md5编码并转成大写:
sign=D89552C4391EED648F9E07F3B07B0751#4.对body做utf-8编码(不是url编码)最终提交的xml:
<xml><appid>wx12a881c60697</appid><attach>sd</attach><body>测试</body><device_info>wx</device_info><goods_tag>asdsd</goods_tag><mch_id>128521402</mch_id><nonce_str>8991731</nonce_str><notify_url>http://www.hhh.com</notify_url><out_trade_no>20180906101016</out_trade_no><sign_type>MD5</sign_type><spbill_create_ip>58.42.243.5</spbill_create_ip><time_expire>20180908101133</time_expire><time_start>20180906101133</time_start><total_fee>1</total_fee><trade_type>MWEB</trade_type><sign>D89552C4391EED648F9E07F3B07B0751</sign>
</xml>请求地址:https://api.mch.weixin.qq.com/pay/unifiedorder
请求返回:
<xml><return_code><![CDATA[SUCCESS]]></return_code>
<return_msg><![CDATA[OK]]></return_msg>
<appid><![CDATA[wx12a881c60697]]></appid>
<mch_id><![CDATA[128521402]]></mch_id>
<device_info><![CDATA[wx]]></device_info>
<nonce_str><![CDATA[CMesZ4kcK8nKIBg6]]></nonce_str>
<sign><![CDATA[2AFF460DC8394BBAD5C855DE9B88F666]]></sign>
<result_code><![CDATA[SUCCESS]]></result_code>
<prepay_id><![CDATA[wx06110302299753e417cbfb4d3746332941]]></prepay_id>
<trade_type><![CDATA[MWEB]]></trade_type>
<mweb_url><![CDATA[https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx06110302299753e417cbfb4d3746332941&package=4027105385]]></mweb_url>
</xml>

3,请求返回的mweb_url就是我们最终需要的连接,我用手机浏览器和app直接打开此链接可以正常打开微信进行支付;

4,其实在第三部以上就可以正常使用了,但是我好奇,就抓包分析一下得到如下数据

通过请求一下地址,注意要加上Referer参数。

https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx06110302299753e417cbfb4d3746332941&package=4027105385

返回的数据如下:

<!DOCTYPE html>
<html>
<head lang="en"><meta http-equiv=Content-Type content="text/html;charset=utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black"><meta name="format-detection" content="telephone=no"><title>weixin</title><style>.f10{font-size:10px}.f11{font-size:11px}.f12{font-size:12px}.f13{font-size:13px}.f14{font-size:14px}.f15{font-size:15px}.f16{font-size:16px}.f17{font-size:17px}.f18{font-size:18px}.f19{font-size:19px}.f20{font-size:20px}body{font-size:14px}h1,h2,h3,h4,h5{font-weight:400;font-style:normal}h1,.h1{font-size:20px}h2,.h2{font-size:18px}h3,.h3{font-size:16px}h4,.h4{font-size:14px}h5,.h5{font-size:12px}a,a:visited{color:#007aff}.text_color{color:#888}.title_color{color:#000}.desc{color:#b2b2b2}.warn{color:#b71414}.nickname{color:#576b95}.tips{font-size:13px;color:#b2b2b2}body{background-color:#fff}body.msg_dark{background-color:#2e3132;color:#fff}.page_msg{padding:75px 15px 0;text-align:center}.icon_area{margin-bottom:19px}.text_area{margin-bottom:25px}.text_area .title{margin-bottom:12px}.opr_area{margin-bottom:25px}.extra_area{margin-bottom:20px}@media screen and (min-height:416px){.extra_area{position:fixed;left:0;bottom:0;width:100%}}.btn{display:block;margin-left:auto;margin-right:auto;padding-left:14px;padding-right:14px;font-size:16px;text-align:center;text-decoration:none;overflow:visible;height:40px;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;color:#fff;line-height:40px;-webkit-tap-highlight-color:rgba(255,255,255,0)}.btn.btn_inline{display:inline-block}.btn_default{background-color:#d1d1d1}.btn_default:not(.btn_disabled):visited{color:#fff}.btn_default:not(.btn_disabled):active{color:rgba(255,255,255,.4);background-color:#a7a7a7}.btn_primary{background-color:#04be02}.btn_primary:not(.btn_disabled):visited{color:#fff}.btn_primary:not(.btn_disabled):active{color:rgba(255,255,255,.4);background-color:#039702}.btn_warn{background-color:#ef4f4f}.btn_warn:not(.btn_disabled):visited{color:#fff}.btn_warn:not(.btn_disabled):active{color:rgba(255,255,255,.4);background-color:#c13e3e}.btn.btn_mini{height:25px;line-height:25px;font-size:14px}button.btn,input.btn{width:100%;border:0;outline:0;-webkit-appearance:none}button.btn:focus,input.btn:focus{outline:0}button.btn_inline,input.btn_inline{width:auto}.btn_disabled{color:rgba(255,255,255,.6)}.btn+.btn{margin-top:10px}.btn.btn_inline+.btn.btn_inline{margin-top:auto;margin-left:10px}.btn_area{margin-left:-5px;margin-right:-5px;font-size:0}.btn_area.btn_area_inline{margin-left:auto;margin-right:auto;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.btn_area.btn_area_inline .btn{margin-top:auto;margin-right:10px;width:100%;-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;box-flex:1;flex:1;display:inline-block \9;width:48% \9;margin-left:1% \9;margin-right:1% \9}.btn_area.btn_area_inline .btn:last-child{margin-right:0}span.btn button{display:block;width:100%;height:100%;background-color:transparent;border:0;outline:0;color:#fff}span.btn button:active{color:rgba(255,255,255,.4)}span.btn.btn_loading button,span.btn.btn_disabled button{color:#fff}.icon_msg{width:100px;height:100px;vertical-align:middle;display:inline-block;border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%}.icon_msg.warn{background-color:#f86161;color:#fff;font-size:60px;font-style:normal}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{font:14px/1.5em "Helvetica Neue",Helvetica,Arial,sans-serif;background-color:#efeff4;line-height:1.6}body,h1,h2,h3,h4,h5,p,ul,ol,dl,dd,fieldset,textarea{margin:0}fieldset,legend,textarea,input,button{padding:0}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0;*font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}ul,ol{padding-left:0;list-style-type:none}a img,fieldset{border:0}a{text-decoration:none}</style>
</head>
<body>
<div class="body"><div id="errpage" class="page_msg"></div>
</div>
<script src="//wx.gtimg.com/wxpay_h5/fingerprint2.min.1.4.1.js"></script>
<script type="text/javascript">var is_postmsg="";if( 0!==0 && is_postmsg=="1" ){parent.postMessage(JSON.stringify({action : "send_deeplink_fail",data : {deeplink : ""},error : {error_code : "0",error_msg : "ok"}}), "");}if( 0===0){window.onload=function(){
//        var fp=new Fingerprint2();//      fp.get(function(result){// var fingerprint="";/*         if(fingerprint!=result && fingerprint){document.getElementById("errpage").innerHTML='<div class="icon_area"><i class="icon_msg warn">!</i></div> \<div class="text_area"> \<h2 id="111" class="title"> '+result+'网络环境未能通过安全验证,请稍后再试</h2> \</div>';return;}*/var is_postmsg="";if(is_postmsg=="1"){parent.postMessage(JSON.stringify({action : "send_deeplink",data : {deeplink : "weixin://wap/pay?prepayid%3Dwx061040101593518ac1f0ddc61295444268&package=3242339213&noncestr=1536201747&sign=1d861e648b025e36118319fca263e29c"}}), "");}else{var url="weixin://wap/pay?prepayid%3Dwx061040101593518ac1f0ddc61295444268&package=3242339213&noncestr=1536201747&sign=1d861e648b025e36118319fca263e29c";var redirect_url="";top.location.href=url;if(redirect_url){setTimeout(function(){top.location.href=redirect_url;},5000);}else{setTimeout(function(){window.history.back();},5000);}}}// );}}
</script>
</body>
</html>

在以上数据可以看到:

weixin://wap/pay?prepayid%3Dwx061040101593518ac1f0ddc61295444268&package=3242339213&noncestr=1536201747&sign=1d861e648b025e36118319fca263e29c

到此数据分析完毕,此链接我们是不能直接生成的,而是要通过第四部请求微信后返回得到。

源文地址:

https://blog.csdn.net/yunwu009/article/details/82457907

作者:403648571@qq.com,QQ群:695080688 

web、app跳转微信支付解决方案相关推荐

  1. APP内拉起微信支付的解决方案

    APP内拉起微信支付的解决方案 目录 需求背景 解决方案 同业情况 补充说明 目录 需求背景 个人APP拥有者,在不直连微信的情况下,希望用户在APP中选择微信支付后可直接跳转微信APP完成支付. 解 ...

  2. APP 跳转微信小程序和回调

    在同一开放平台账号下的移动应用及小程序无需关联即可完成跳转,非同一开放平台账号下的小程序需与移动应用(APP)成功关联后才支持跳转. 可在"管理中心-移动应用-应用详情-关联小程序信息&qu ...

  3. Android ReactNative 极光、友盟、高德地图、支付宝、微信支付解决方案

    Android ReactNative 极光.友盟.高德地图.支付宝.微信支付解决方案 说明一下,目前我们整个项目用的都是用react native写下来的.事实上我负责Android端这边的配置,还 ...

  4. 个人开发者如何在App中调起微信支付

    主要内容   关于企业资质开发者申请的微信支付,如何调起微信支付的,官方文档已经很详细,且百度上也有很多相关资料,这里不再介绍.本篇主要讲的是个人资质的支付如何在自己的App中调起微信支付. 演示 实 ...

  5. APP跳转微信小程序,跳转微信公众号

    一.判断手机是否安装了微信的工具类: //判断手机是否安装了某些程序的工具类 public class IsInstallUtils {//判断是否安装了微信public static boolean ...

  6. Android APP跳转微信小程序和APP跳转支付宝小程序传参

    Android APP跳转微信小程序和APP跳转支付宝小程序传参 微信开放文档链接 MINIPROGRAM_TYPE_PREVIEW:体验版. MINIPROGRAM_TYPE_TEST:开发版 MI ...

  7. uni-app app 跳转 微信小程序(安卓/ios)

    uni-app app 跳转 微信小程序(安卓/ios) 近日接到需求,需要实现在 app 中直接跳转到微信小程序中,其实非常简单,uni-app 都已经集成好了. 安卓和ios 有点区别,这个需要注 ...

  8. 阿里多个App已接入微信支付;Facebook年薪中位数170万元;恶意软件感染超1000万台安卓设备 | EA周报...

    EA周报 2021年9月30日 每个星期7分钟,元宝带你喝一杯IT人的浓缩咖啡,了解天下事.掌握IT核心技术. 周报看点 1.恶意软件感染超1000万台安卓设备 2.阿里回应App接入微信支付:会继续 ...

  9. html微信支付跳转源码,h5外部浏览器跳转微信支付链接api接口免费代码

    如何让h5网页外浏览器跳转微信支付链接呢,这里分析了部分微信接口,可以用原生的公众号支付接口来搭建平台,代码如下 跳转中 //演示地址:http://vip.kakuapi.com/wxpay.php ...

最新文章

  1. 基于SSH实现健康管理系统
  2. Windows usb设备正在使用中
  3. Linux-Apache和PHP结合
  4. 动画延迟效果css,每个子元素都有延迟的CSS动画
  5. 信息学奥赛一本通 1088:分离整数的各个数 | OpenJudge NOI 1.5 28:分离整数的各个数位
  6. 图论 —— 网络流 —— 费用流 —— 基于 Dijkstra 的费用流
  7. 谁需要这件礼物?每一个爱学习的人!
  8. php通过mysqli链接mysql数据库
  9. python学习-python学习笔记(一)python简介和基础
  10. fork的写时复制1
  11. 645.错误的集合(力扣leetcode) 博主可答疑该问题
  12. ENGLISH-英文进修
  13. oracle dbf文件迁移,Oracle安装盘空间不足,对.DBF文件进行迁移
  14. 路由器中继模式WISP、Client + AP、AP模式的区别和适使用场景
  15. 第四章—密钥管理与分配
  16. 以太网芯片W3100A到W3150A+的移植笔记(一)
  17. 【笔记|C++】最大公约数、最小公倍数的四种求法
  18. FlatBuffer
  19. 幼儿抽象逻辑思维举例_幼教科目二丨幼儿认知的发展(思维)
  20. 7-10 公路村村通 (最小生成树Prim算法) | PTA数据结构与算法——C语言实现

热门文章

  1. 在Blender中使用代码控制人物模型的嘴部动作 - 嘴部张开
  2. 织梦插件-站长必备免费织梦插件快速收录
  3. linux处理器平台,基于FA526处理器SoC平台的Linux操作系统实现
  4. 态℃ |一条毛巾在拼多多的新消费奇遇记
  5. 某某区电子政务平台需求工程方法建议
  6. 腾讯云 对象存储Java文件上传 学习资料整理
  7. svchost.exe占用过高CPU和内存的解决方案
  8. 了解GRE隧道以及它的作用
  9. 自学Matlab必备的60个小程序代码
  10. 026惯导卫星组合导航仿真