揭秘:如何生成QQ跳转支付宝红包短链接

最近一段时间,支付宝的赏金红包十分火爆,各种微信群内都是这种红包口令。这种口令需要复制后,在打开支付宝才能领取红包。然后,也出现一种黑科技,直接在微信里面点击url,自动跳转到支付宝,并且红包是直接领取的。下面我就来讲下这个是怎么实现的。

本文只针对ios,安卓已经被和谐

原理

在ios9后,ios提供了一个新特性,叫做Universal Links,这个技术的作用是,每个app可以向ios系统注册自己监控的url,当在其他应用打开这个url时,会到对应的App打开这个链接。
目前微信已经和谐这个功能,QQ还可以

实现

1.获取红包code

在支付宝把你到红包二维码发送到电脑上,然后用微信去扫,你会看到一个url

https://qr.alipay.com/c1x09500yklzfzymznwya7a

最后面那个/后面到就是你的红包code

2.建立网页

网页这一块我也是从网上抓包来到,毕竟自己也不熟悉微信API,直接贴代码

index.html






正在打开支付宝,请稍候……




   

kouling.js

var _0 = "https://qr.alipay.com/c1x09500yklzfzymznwya7a";
var _1 = "https://qr.alipay.com/c1x09500yklzfzymznwya7a";

function is_weixin() {
    if (/MicroMessenger/i.test(navigator.userAgent)) {
        return true
    } else {
        return false
    }
}

function is_android() {
    var ua = navigator.userAgent.toLowerCase();
    if (ua.match(/(Android|SymbianOS)/i)) {
        return true
    } else {
        return false
    }
}

function is_ios() {
    var ua = navigator.userAgent.toLowerCase();
    if (/iphone|ipad|ipod/.test(ua)) {
        return true
    } else {
        return false
    }
}

function android_auto_jump() {
    WeixinJSBridge.invoke("jumpToInstallUrl", {}, function(e) {});
    window.close();
    WeixinJSBridge.call("closeWindow")
}

function ios_auto_jump() {
    if (_0 != "") {
        location.href = _0
    } else {
        window.close();
        WeixinJSBridge.call("closeWindow")
    }
}

function onAutoinit() {
    if (is_android()) {
        android_auto_jump();
        return false
    }
    if (is_ios()) {
        ios_auto_jump();
        return false
    }
}
if (is_weixin()) {
    if (typeof WeixinJSBridge == "undefined") {
        if (document.addEventListener) {
            document.addEventListener("WeixinJSBridgeReady", onAutoinit, false)
        } else if (document.attachEvent) {
            document.attachEvent("WeixinJSBridgeReady", onAutoinit);
            document.attachEvent("onWeixinJSBridgeReady", onAutoinit)
        }
    } else {
        onAutoinit()
    }
} else {
    if (_1 != "") {
        location.href = _1
    } else {
        window.close()
    }
}

把js第1,2行的code改成你自己的

3.搭建服务器

PS:你需要有自己的域名和服务器,没有域名生成不了短链接
我用的是openresty也就是nginx来搭建服务器
openresty的安装,请看http://openresty.org/en/
安装完openresty后,进入/usr/local/openresty/nginx/conf目录,新建一个配置alipay.conf

user root;
worker_processes  1;
error_log logs/error.log;
events {
        worker_connections 1024;
}
http{
        include       mime.types;
        default_type  application/octet-stream;
        server {
                listen  80;
                server_name  alipay.shengchaojie.com;
                root /root/html;
                location /scj{
                }
        }
}

然后建立文件夹/root/html/scj,这个你可以自定义
把index.html还有kouling.js放到文件夹下面
进入/usr/local/openresty/nginx/sbin目录,运行指令./nginx -c conf/alipay.conf

现在静态资源部署好了,把你的域名指向这台服务器,这步就不讲了。
你可以通过http://ip/scj或者http://domain/scj来访问这个页面,如果是在微信里面,那么已经跳转到支付宝领取红包了

4.转换短链接

为了美观一点,我们需要把自己的域名转换为短链接
我们百度短链接,有很多短链接的转换网站,例如http://sina.lt/

在得到短链接后,为了更美观一点你可以设计文案,比如

前任3:再见前任(郑凯 韩庚)
http://t.cn/RHBSqCh
点击链接观看即可

那么很多人的爱美之心会发作,来领取你的红包了

最后

老铁们领取下我的红包把


揭秘:如何生成QQ跳转支付宝红包短链接_第1张图片
么么哒

你可能感兴趣的:(揭秘:如何生成QQ跳转支付宝红包短链接)