如何使用PHP获取WAP中的MSISDN号码?

时间:2012-04-23 10:40:12

标签: php phone-number sim-card wap msisdn

我开发了WAP应用程序,我想获取访问我网站的用户的MSISDN。

我的运营商已将白色列在我的WAP应用程序中。

我在三星手机上成功获得MSISDN,但在诺基亚,黑莓和黑莓手机上获得的结果并不相同。 iPhone设备。

请建议我获取所有设备的MSISDN号码的最佳方式。

4 个答案:

答案 0 :(得分:8)

获取访问WAP站点的用户的MSISDN的能力取决于许多事情。

首先,用户必须使用移动数据。如果用户使用WiFi,则您将无法收到此信息。

其次,用户移动网络必须支持在HTTP头中传递MSISDN。

某些移动网络会在所有请求中发送标头。其他人只有通过特定的APN才会发送。有些只将此标头发送到特定的IP地址/块。我甚至遇到过将MSISDN作为$ _GET变量发送的网络。您需要检查您打算支持的每个网络。

例如,南非的特定网络用于在大约6个月前发送标头中的MSISDN,并且为了在标头中接收MSISDN,现在您的服务器地址需要与它们列入白名单。

另外请记住,标题很容易被欺骗,除非您确保自己是HTTP请求的发起者,例如在Android应用程序中使用Web视图的情况下,否则不应该依赖标题 - 您需要自己采取足够的措施。

考虑到所有这些,这就是你应该寻找的东西:

查看以下任何内容的标题。这根本不是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正则表达式再次检查标题,以查看我不知道的密钥标题中是否存在任何潜在的MSISDN。如果我找到了可能的匹配项,我会将密钥和数据添加到一个列表中,以后我可以通过该列表添加到已知的MSISDN标题列表中。

我希望这已经得到了一些清晰度。最重要的是要记住,这不是获取MSISDN的可靠方法。

答案 1 :(得分:1)

您可以尝试这些其他人(原创:puedes intentar con estas otras ):

  • 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
  • X - 转发,对于
  • 代理客户IP
  • WL-代理客户端IP
  • HTTP_CLIENT_IP
  • HTTP_X_FORWARDED_FOR
  • 的x真实IP
  • HTTP_X_UP_CALLING_LINE_ID
  • HTTP_MSISDN
  • MSISDN
  • 用户身份的前向MSISDN
  • HTTP_X_MSISDN
  • HTTP_X_NOKIA_MSISDN
  • HTTP_X_UP_SUBNO

答案 2 :(得分:0)

有时,标头会被移动运营商加密。这可能会更改标题的命名。例如,X-MSISDN变为X-ENCR-MSISDN。

答案 3 :(得分:0)

根据我最近的研究,有些运营商在服务器请求上发送x标头,我发现许多运营商正在隐藏或加密或重命名x标头,并且很难检索用户的MSISDN,我尝试了很多方法,如果你想测试你的运营商,你可以使用这个网站测试运营商的MSISDN可用性(记得打开你的移动设备的链接)我希望它会帮助你。我已经使用Asp.net Mvc拿起这些标题