讀古今文學網 > 微信公眾平台開發:從零基礎到ThinkPHP5高性能框架實踐 > 18.3.2 AC/AP設備改造 >

18.3.2 AC/AP設備改造

AC/AP設備改造需要達到以下要求。

1)提供獲取AP及終端手機MAC地址的Web API。

某款Portal路由器獲取路由器及當前連接手機MAC地址的API接口如下。


http:// fangbei.lan:8080/ubus
  

請求MAC地址時,提交POST數據示例如下。


{
    "id":1234,
    "jsonrpc":"2.0",
    "method":"call",
    "params":[
        "00000000000000000000000000000000",
        "mgmtd",
        "info",
        {}
    ]
}
  

上述數據提交後,返回數據示例如下。


{
    "jsonrpc":"2.0",
    "id":1234,
    "result":[
        0,
        {
            "hwid":"08410008",
            "swver":"r0.7.6-fangbei",
            "client_ip":"192.168.3.206",
            "macaddr":"00e0614ca7c5",
            "client_mac":"0021ccb8bfd4"
        }
    ]
}
  

其中,macaddr和client_mac分別為當前路由器和手機終端的MAC地址。

2)將IOS的嗅探地址放入白名單。

為了防止IOS切換SSID時自動彈出Portal頁,需要將IOS的嗅探地址「http://captive.apple.com/hotspot-detect.html」放入路由器放行地址白名單。

3)支持臨時放行上網請求。

AP/AC在Portal頁打開後需要臨時放行用戶的上網請求。只有臨時放行成功,才可以通過JS API調起微信,換取用戶身份信息,保證後續認證請求順利完成,從而成功聯網。

IOS調起微信時,如果網絡不通,WiFi會被切走,會導致聯網失敗,因此需要AC/AP支持臨時放行上網請求。