Возможно, Cant не нашел никакой информации об этом, но задавался вопросом, есть ли какой-либо способ определить, находится ли пользователь в Wi-Fi-соединении, в частности, публичный Wi-Fi, используя javascript или php?
Нет, нет, нет ничего в IPv4 или HTTP-транспорте, который даже намекает на то, какое соединение используется, за исключением самого базового протокола, который обычно является IPv4 и HTTP.
Нет, IPv6 также не включает эту информацию.
Есть два способа сделать это, о которых я знаю:
Проверьте IP-адрес базы данных. Кстати, этот вариант дает вам гораздо больше информации о перевозчике. Он также может предоставить вам местоположение и имя интернет-провайдера, домена, который сопоставляется с этим IP-адресом, лат / длинным, почтовым индексом, часовым поясом и т. Д. И т. Д. Посмотрите http://www.quova.com/ для RESTful API, который позволяет это.
Программно: это работает только на Android версии 2.2+. Это простая проверка для navigator.connection. Надеюсь это поможет. Вот тестовая страница:
<html> <head> <script type="text/javascript"> function checkWIFI() { var output = document.getElementById('connectionCheck'); var html = "Checking...<br/>Connection: "; if (navigator.connection) { var type = navigator.connection.type; switch (type) { case navigator.connection.UNKNOWN: html += "Unknown"; break; case navigator.connection.ETHERNET: html += "Ethernet"; break; case navigator.connection.WIFI: html += "Wifi"; break; case navigator.connection.CELL_2G: html += "Cell 2G"; break; case navigator.connection.CELL_3G: html += "Cell 3G"; break; default: html += "Missing"; } } else { html += "Connection type not supported."; } output.innerHTML = html; } </script> </head> <body onload="checkWIFI();"> <div id="connectionCheck"> </div> </body> </html>
Вы можете получить некоторую информацию о пользовательском IP-протоколе, используемой ОС. Но вы не можете получить информацию о используемом носителе, который пользователь использует для подключения к Интернету. Существуют некоторые средства тестирования скорости для анализа скорости соединения, с которой подключен пользователь, но беспроводные соединения не имеют какой-либо значительной отметки скорости или что-то еще для ее идентификации.
Нет. Ну, вы можете проверить их IP против какой-либо теоретической базы данных – в очень ограниченном количестве случаев, которые это может вам рассказать.
Но Javascript по дизайну не раскрывает достаточно информации о пользователе, и определенно нет способа узнать PHP, если он не сможет каким-то образом убедить клиента поделиться.