国产视频app我們上一篇文章講解了,如何判斷微信客戶端(判斷微信瀏覽器),這一篇我們說說,如何判斷支付寶的客戶端。

判斷微信瀏覽器是通過瀏覽器的userAgent來判斷的,判斷支付寶的客戶端,同樣也可以通過它來判斷。

国产视频app來自支付寶中的userAgent

示例1:

Mozilla/5.0 (Linux; U; Android 6.0.1; en-us; MI 5 Build/MXB48T) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 UCBrowser/1.0.0.100 U3/0.8.0 Mobile Safari/534.30 AlipayDefined(nt:WIFI,ws:360|640|3.0) AliApp(AP/9.9.2.090801) AlipayClient/9.9.2.090801 Language/en

示例2:

Mozilla/5.0 (Linux; U; Android 7.0; zh-cn; MI 5 Build/NRD90M) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 UCBrowser/1.0.0.100 U3/0.8.0 Mobile Safari/534.30 Nebula AlipayDefined(nt:NotReachable,ws:360|640|3.0null) AliApp(AP/10.0.5.022801) AlipayClient/10.0.5.022801 Language/zh-Hans useStatusBar/true

国产视频app吐槽一下:來自支付寶瀏覽器的userAgent信息,直得讓人頭大。

通過上面的userAgent信息,可以發現其中包含了一個‘AlipayClient’字段。我們可以通過判斷是否含有此字段的方式來判斷是否為支付寶客戶端。

PHP判斷支付寶,PHP判斷是否支付寶瀏覽器,JS判斷支付寶瀏覽器,js判斷來源支付寶

PHP判斷是否為支付寶客戶端

代碼1:

//飛鳥慕魚博客
function isInAlipayClient(){
    if( strpos($_SERVER['HTTP_USER_AGENT'], 'AlipayClient') !== false ) {
        return true;
    }
    return false;
}

注意:以上代碼,是從支付寶的支付SDK中獲取的。并加以修改,判斷邏輯不變

代碼2:

//飛鳥慕魚博客
function isAliClient(){
    return strpos($_SERVER['HTTP_USER_AGENT'], 'Alipay') !== false;
}

JS判斷是否為支付寶瀏覽器

代碼1:

if (/AlipayClient/.test(window.navigator.userAgent)) { 
    alert('支付寶客戶端');
} else {
    alert('其他瀏覽器');
}

代碼2:

var browser = navigator.userAgent.toLowerCase();
if(browser.match(/Alipay/i)=="alipay"){
    console.log("支付寶app的瀏覽器");
}else if(browser.match(/MicroMessenger/i)=="micromessenger"){
    console.log("微信app的瀏覽器");
}else{
    console.log("其它瀏覽器");
}