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

nir*_*717 5 php wap phone-number sim-card msisdn

我开发了一个WAP应用程序,我想得到访问我网站的用户的MSISDN.

我的运营商已将白色列入我的WAP应用程序

我正在三星手机上成功获得MSISDN,但在诺基亚,黑莓和iPhone设备上没有得到相同的结果.

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

dar*_*ten 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的可靠方法.