一张二维码集成微信、支付宝支付

简介: 解决方案是通过User-Agent 来判断扫描的来源此项目已开源欢迎Start、PR、发起Issues一起讨论交流共同进步 https://github.com/Javen205/IJPay http://git.oschina.net/javen205/IJPayHttp Header之User-AgentUser Agent中文名为用户代理,是Http协议中的一部分,属于头域的组成部分,User Agent也简称UA。

解决方案是通过User-Agent 来判断扫描的来源

此项目已开源欢迎Start、PR、发起Issues一起讨论交流共同进步
https://github.com/Javen205/IJPay
http://git.oschina.net/javen205/IJPay

Http Header之User-Agent

User Agent中文名为用户代理,是Http协议中的一部分,属于头域的组成部分,User Agent也简称UA。它是一个特殊字符串头,是一种向访问网站提供你所使用的浏览器类型及版本、操作系统及版本、浏览器内核、等信息的标识。通过这个标 识,用户所访问的网站可以显示不同的排版从而为用户提供更好的体验或者进行信息统计。

几个例子

QQ

Mozilla/5.0 (iPhone; CPU iPhone OS 8_4 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12H143 Safari/600.1.4

微信

Mozilla/5.0 (iPhone; CPU iPhone OS 10_2 like Mac OS X) AppleWebKit/602.3.12 (KHTML, like Gecko) Mobile/14C92 MicroMessenger/6.5.3 NetType/WIFI Language/zh_CN

支付宝

Mozilla/5.0 (iPhone; CPU iPhone OS 10_2 like Mac OS X) AppleWebKit/602.3.12 (KHTML, like Gecko) Mobile/14C92 ChannelId(3) Nebula PSDType(1) AlipayDefined(nt:WIFI,ws:375|647|2.0) AliApp(AP/10.0.1.123008) AlipayClient/10.0.1.123008 Alipay Language/zh-Hans

具体实现

public class AllPayController extends Controller {
    protected final Log log = Log.getLog(getClass());

    public void index(){
        String userAgent = getRequest().getHeader("User-Agent");
        log.info(userAgent);
        int payWay = 0;
        String agent = userAgent.toLowerCase();
        if (agent.indexOf("micromessenger")>0) {
            //用户使用微信访问页面
            payWay = 1;
            System.out.println("微信...");

        }else if(agent.indexOf("alipayclient")>0){
            //用户使用支付宝访问页面
            payWay = 2;
            System.out.println("支付宝...");
        }

        renderText(payWay+" userAgent:"+userAgent);
    }
}

推荐阅读
Android版-微信APP支付
极速开发微信公众号之微信买单
极速开发微信公众号之公众号支付
极速开发微信公众号之扫码支付
极速开发微信公众号之刷卡支付
极速开发微信公众号之现金红包
Android版-支付宝APP支付
支付宝Wap支付

记录学习的点滴,以此勉励不断奋斗的自己️️️ 如果对你有帮助记得点喜欢
源码下载地址

目录
相关文章
|
2月前
|
Java API 开发工具
支付与银行业线上客户协议应用中的DocuSign集成方式选择——SDK和API
跨境支付公司和Docusign进行集成时,碰到问题时的解决方案。分别用SDK和API集成后的各自使用体验。
46 2
支付与银行业线上客户协议应用中的DocuSign集成方式选择——SDK和API
|
5月前
CSDN博客如何添加微信公众号二维码
CSDN博客如何添加微信公众号二维码
89 0
|
5月前
|
小程序 开发者
微信小程序通过普通二维码扫码进入指定页面带参数
微信小程序通过普通二维码扫码进入指定页面带参数
|
2月前
|
小程序 JavaScript
微信小程序显示二维码?
微信小程序显示二维码?
|
4月前
|
小程序
微信小程序中长按识别二维码
微信小程序中长按识别二维码
87 0
|
4月前
|
小程序 开发者
微信小程序保存二维码的过程
微信小程序保存二维码的过程
63 0
|
17天前
|
JSON 缓存 小程序
.NET生成微信小程序推广二维码
.NET生成微信小程序推广二维码
|
4月前
|
Java 开发工具
解决SpringBoot集成支付宝支付中文订单描述验签错误问题
解决SpringBoot集成支付宝支付中文订单描述验签错误问题
32 0
|
4月前
|
小程序 PHP 开发者
微信公众号开发(八)生成带参数二维码,以及将二维码下载至本地
微信的二维码真是个神奇的东西。在我们开发中,应用也是很多~ 用户扫描带场景值(参数)二维码时,可能推送以下两种事件:
64 1
|
5月前
|
设计模式 Java Maven
淘东电商项目(60) -聚合支付(集成支付宝)
淘东电商项目(60) -聚合支付(集成支付宝)
43 0

热门文章

最新文章