Обнаружение MSISDN (номер мобильного телефона) с помощью браузера
есть ли какие-либо HTTP-заголовки, которые можно использовать для обнаружения номера мобильных пользователей, отличного от этого X-header x-up-calling-line-id
?
Я хочу обнаружить из всех браузеров как можно больше, чтобы охватить все мобильные платформы.
3 ответов
Я дам вам тот же самый ответ, что и на очень похожий вопрос, поскольку он должен дать некоторое представление о том, чего вы пытаетесь достичь.
возможность получить MSISDN пользователя, посещающего WAP-сайт, зависит от ряда вещей.
во-первых, пользователь должен быть на мобильных данных. Если пользователь на WiFi, то вы не получите эту информацию.
во-вторых, мобильная сеть пользователей должна поддерживать передачу MSISDN в HTTP заголовки.
некоторые мобильные сети отправляют заголовки по всем запросам. Другие только отправляют, если проходят через определенный APN. Некоторые отправляют этот заголовок только на определенные IP-адреса / блоки. Я даже сталкивался с сетями, которые отправляют MSISDN как переменную $_GET. Вам нужно будет проверить каждую сеть, которую вы собираетесь поддерживать.
например, определенная сеть в Южной Африке использовала для отправки MSISDNs в заголовках до около 6 месяцев назад, и для получения MSISDN в заголовки теперь ваш адрес сервера должен быть занесен в белый список вместе с ними.
также помните, что заголовки очень легко подделать, и не следует полагаться, если вы не гарантируете, что вы являетесь инициатором HTTP - запроса, например, в случаях, когда вы используете веб-представления внутри приложений Android-вам нужно будет самостоятельно принять достаточные меры.
с все это в виду, вот что вы должны искать:
посмотреть через ваши заголовки для любого из следующих. Это не полный список заголовков MSISDN вообще, это только те, с которыми я столкнулся в своих приключениях в мобильной разработке.
- X-MSISDN
- X_MSISDN
- HTTP_X_MSISDN
- X-UP-CALLING-LINE-ID
- X_UP_CALLING_LINE_ID
- HTTP_X_UP_CALLING_LINE_ID
- X_WAP_NETWORK_CLIENT_MSISDN
то, что я делаю, проходит через заголовки ищут любые совпадения. Если я не нахожу совпадений, я снова запускаю заголовки, используя регулярное выражение MSISDN для конкретной страны, чтобы увидеть, есть ли какие-либо потенциальные MSISDNs в заголовках на ключах, о которых я не знаю. Если я нахожу потенциальное совпадение, я добавляю ключ и данные в список, который я могу просмотреть позже, чтобы добавить к моему списку известных заголовков MSISDN.
Я надеюсь, что это купило некоторую ясность. Главное помнить, что это не надежный метод получения MSISDN.
честно говоря, вы не хотели бы, чтобы эта функция все это. Предположим, вы посещаете пару веб-сайтов, и они записывают ваш номер телефона из заголовка "x-up-calling-line-id". И эти веб-сайты продают ваш номер телефона телемаркетингу. Ты хочешь оказаться в такой ситуации?
техническая причина другая. номер телефона никогда не хранится на телефоне (обычно). SIM-карта идентифицируется по номеру IMSI и Домашний Реестр Местоположения (в MSC) содержит запись, которая сопоставляет IMSI с номером телефона. Поэтому, чтобы ответить на ваш вопрос, это невозможно.
используйте apache_request_headers () в PHP для получения MSISDN. но мобильная сеть пользователей должна поддерживать передачу MSISDN в заголовках HTTP.