微信连WIFI

最近做了一个微信连WIFI的java项目,网上的答案太少了,基本找不到什么有效的解决方案,就自己写一下自己的使用方法吧。

废话不多说,直接上代码微信连wifi实例


  给路由器提供的白名单

wx.applstore.cn,api.weixin.qq.com,weixin.qq.com,szshort.weixin.qq.com,3glogo.gtimg.com,wifi.weixin.qq.com,open.weixin.qq.com,wximg.gtimg.com,mmbiz.qpic.cn,m.dianping.com,cashort.weixin.qq.com,hkshort.weixin.qq.com,sh2tjshort.weixin.qq.com,short.weixin.qq.com,sz2tjshort.weixin.qq.com"

IOS的白名单需要加上

,thinkdifferent.us,airport.us,apple.com,ibook.info,itools.info,captive.apple.com,appleiphonecell.com

但是IOS加上白名单后,不能知道唤起portal页

<!DOCTYPE HTML>
<html>
<head lang="zh-CN">
    <meta http-equiv="Content-Type" content="text/html; charset=GBK" />
    <title>微信连Wi-Fi</title>
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <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">
    <!-- 唤起微信的js  必须的 -->
    <script type="text/javascript" src="https://wifi.weixin.qq.com/resources/js/wechatticket/wechatutil.js" ></script>
    <script type="text/javascript" src="js/jquery.js" ></script>
    <script type="text/javascript" src="js/jquery-1.4.2.min.js" ></script>
    <script type="text/javascript" src="js/jquery.md5.js" ></script>
    <link rel="stylesheet" href="https://wifi.weixin.qq.com/resources/css/style-simple-follow.css"/>
</head>
<body class="mod-simple-follow">
<div class="mod-simple-follow-page">
    <div class="mod-simple-follow-page__banner">
        <img class="mod-simple-follow-page__banner-bg" src="https://wifi.weixin.qq.com/resources/images/background.jpg" alt=""/>
        <div class="mod-simple-follow-page__img-shadow"></div>
        <div class="mod-simple-follow-page__logo">
            <img class="mod-simple-follow-page__logo-img" src="https://wifi.weixin.qq.com/resources/images/t.weixin.logo.png" alt=""/>
            <p class="mod-simple-follow-page__logo-name"></p>
            <p class="mod-simple-follow-page__logo-welcome">欢迎您</p>
        </div>
    </div>
    <div class="mod-simple-follow-page__attention">
        <p class="mod-simple-follow-page__attention-txt">欢迎使用微信连Wi-Fi</p>
        <a class="mod-simple-follow-page__attention-btn" οnclick="callWechatBrowser()">一键打开微信连Wi-Fi</a>
    </div>
</div>
</body>
<script type="text/javascript">

    function putNoResponse(ev){
         clearTimeout(noResponse);
    }    
    
    function errorJump()
    {
         alert('您的手机浏览器可能无法跳转到微信,如果已跳转请忽略此提示');
    }
    
    myHandler = function(error) {
         errorJump();
    };
        
    function callWechatBrowser(){
        var shopId  = 7361114;//微信开发凭证的基本参数
        var appId = "wx26800b03a1aaa5b2";//微信开发凭证的基本参数
        var secretKey = "e250b36ec015a440fd2b0e0f33edb02b";//微信开发凭证的基本参数
        var timestamp = new Date().getTime();//获取时间戳
        var extend = "extend";//唤起微信时的参数,但是对于基础开发没什么用,高级开发还没有弄明白
        var authUrl   = "http://wifi.weixin.qq.com/assistant/wifigw/auth.xhtml?httpCode=200";//这个链接其实时,路由器放行上网的链接,有硬件开发的提供链接
        var mac   = "aa:aa:aa:aa:aa:aa";//手机的mac地址
        var ssid   = "WX-FRwifi";//无线网名称
        var bssid = "ff:ff:ff:ff:ff:ff";//路由器mac地址
        
        var sign = $.md5(appId + extend + timestamp + shopId + authUrl + mac + ssid + bssid + secretKey);//使用jquery 的MD5加密方式进行加密
        //唤起微信的方法,有微信
        Wechat_GotoRedirect(
            appId,
            extend,     
            timestamp,
            sign,
            shopId,   
            authUrl,
            mac,      
            ssid,      
            bssid );
    }
</script>
<script type="text/javascript">
    document.addEventListener('visibilitychange', putNoResponse, false);
</script>
</html>

微信连wifi实例




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值