zoukankan      html  css  js  c++  java
  • 如何判断扫码的客户端是微信还是支付宝

    User Agent格式

     User Agent中文名为用户代理,简称 UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。

    浏览器的 UA 字串 

    标准格式为: 浏览器标识 (操作系统标识; 加密等级标识; 浏览器语言) 渲染引擎标识 版本信息

    微信APP:Mozilla/5.0 (iPhone; CPU iPhone OS 11_4_1 like Mac OS X) 
    AppleWebKit/605.1.15 (KHTML, like Gecko) 
    Mobile/15G77 MicroMessenger/6.7.2 NetType/4G Language/zh_CN
     
     
    支付宝APP:Mozilla/5.0 (iPhone; CPU iPhone OS 11_4_1 like Mac OS X) 
    AppleWebKit/605.1.15 (KHTML, like Gecko) 
    Mobile/15G77 NebulaSDK/1.8.100112 Nebula PSDType(1) 
    AlipayDefined(nt:4G,ws:320|504|2.0) AliApp(AP/10.1.32.600) 
    AlipayClient/10.1.32.600 Alipay Language/zh-Hans
    • 获取user-Agent 之后,
    • 通过识别MicroMessenger或者AlipayClient这样的关键字应该就可以判断是微信还是支付宝
      async index() {
    
        let header = this.ctx.request.header
    
        let userAgent = header['user-agent']
    
        let content = '我既不是微信也不是支付宝'
    
        if ( userAgent.match(/MicroMessenger/) == 'MicroMessenger' ) {  
            console.log('WeiXIN')
            content = '微信扫码'
        }   
        //判断是不是支付宝
        if (userAgent.match(/AlipayClient/) == 'AlipayClient') {
            console.log('Alipay')
            content = '支付宝扫码'
        }
    
        let title = '我是首页'
        await this.ctx.render('index', {
          title: title,
          content: content
        })
      }
  • 相关阅读:
    原来这才是 Socket !
    C 语言基础,来喽!
    手把手教你汇编 Debug
    拒做技术小白?计算机关键概念你不得不掌握!
    利用Windbg分析Magicodes.IE一次错误编写导致内存剧增
    Spring Boot整合JApiDocs实现API文档
    Spring Boot 快速整合Swagger
    Python测试框架pytest入门基础
    性能测试之测试分析与调优
    html5调用摄像头截图
  • 原文地址:https://www.cnblogs.com/zyulike/p/10114611.html
Copyright © 2011-2022 走看看