WAP 사이트를 방문하는 사용자의 MSISDN을 가져 오는 기능은 여러 가지로 달려 있습니다.
먼저 사용자는 모바일 데이터를 사용해야합니다. 사용자가 WiFi를 사용 중이면이 정보를받지 못합니다.
두 번째로, 사용자 모바일 네트워크는 HTTP 헤더에서 MSISDN의 전달을 지원해야합니다.
일부 모바일 네트워크는 모든 요청에 대해 헤더를 전송합니다. 특정 APN을 통과하는 경우에만 다른 사람이 보냅니다. 일부는이 헤더를 특정 IP 주소/블록으로 만 보냅니다. MSISDN을 $ _GET 변수로 보내는 네트워크를 찾아 왔습니다. 지원하려는 각 네트워크에 대해 확인해야합니다.
예를 들어, 남아프리카 공화국의 특정 네트워크는 약 6 개월 전까지 헤더에 MSISDN을 보내곤했습니다. 이제 머리글에 MSISDN을 수신하려면 서버 주소를 허용 목록에 포함시켜야합니다.
헤더는 매우 쉽게 스푸핑하기 쉽고, Android 애플리케이션 내부에서 웹보기를 사용하는 경우와 같이 HTTP 요청의 발신자임을 보장하지 않는 한 신뢰할 수 없습니다. 당신은 충분한 조치를 취할 필요가 있습니다. 다음 중 하나에 대한 헤더를 통해
봐 : 그 모든 마음에와
, 여기 당신이 찾고해야하는 것이다. 이것은 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
내가 do는 모든 일치 항목을 찾는 헤더를 통해 실행됩니다. 일치하는 항목을 찾지 못하면 값에 대해 국가 별 MSISDN 정규식을 사용하여 머리글을 다시 실행하여 내가 모르는 키의 헤더에 잠재적 인 MSISDN이 있는지 확인합니다. 잠재적 인 일치 항목을 발견하면 키와 데이터를 목록에 추가하여 나중에 알려진 MSISDN 헤더 목록에 추가 할 수 있습니다.
나는 이것이 약간 명확성을 샀다는 것을 희망한다. 기억해야 할 가장 중요한 점은 이것이 MSISDN을 얻기위한 신뢰할 수있는 방법이 아니라는 것입니다.
귀하의 질문에 맞는 답변이있을 경우 귀하의 질문 중 일부를 답변으로 표시하십시오. –