使用Twilio短信API来验证真实电话号码

问题描述:

我建立Android和iOS的应用IONIC2,我的应用程序的注册步骤如下:使用Twilio短信API来验证真实电话号码

1 - 用户安装的应用程序。

2-用户输入他的详细信息“姓名,电子邮件,电话号码,密码等......”

3-应用程序将通过短信发送一个随机码给用户。

4-应用程序将此代码存储在一个变量中。

5-用户从sms中读取代码并将其放入文本输入中。

6-应用程序检查文本输入中变量==代码中的代码。

7如果创建真实,用户帐户和用户在签署。

用户试图登录,他将被要求输入自己的用户名和密码,下一次,会有不发送短信在这一步,因为我只需要验证电话号码是真实的。

由于某种原因,这是错误的吗?有没有更好的方法来做到这一点?

我将使用的代码只是使用angular2的typescript和html(对于ionic2),下面的代码是用jquery编写的,如果我在正确的轨道上,我将改变它。

我应该补充说,这个短信验证服务将没有服务器,只有javascript和twilio api。

任何人都可以读取我的SID和KEY吗?因为它是一个应用程序,而不是静态网页

$("#btnSubmit").click(function() { 
     // Your Twilio credentials 

     var SID = "MY-SID-HERE"; 
     var Key = "MY-KEY-HERE"; 
     var random_code_in_sms = "123456"; // generated randomly 


     $.ajax({ 
      type: 'POST', 
      url: 'https://api.twilio.com/2010-04-01/Accounts/' + SID + '/Messages', 
      data: { 
       "To": "+123456789", 
       "From": "+987654321", 
       "Body": "Hello World" 
      }, 
      beforeSend: function(xhr) { 
       xhr.setRequestHeader("Authorization", "Basic " + btoa(SID + ':' + Key)); 
      }, 
      success: function(data) { 
       console.log(1); 
       console.log(data); 
      }, 
      error: function(data) { 
       console.log(data); 
      } 
     }); 

    }); 

我可能会使用Twilio的Authy API,而不是试图建立自己的短信API后面自己的解决方案。

它基本上已经完成了你正在努力实现的目标。

+0

不需要后端?我读过的一切都表示它需要某种服务器 – Eaves12

+0

不,这就是整个问题。 Twilio提供了后端。有几种集成方式可供选择,但最简单的形式是使用用户电话号码向Twilio发送HTTP POST,Twilio生成一个代码并通过短信发送给他们,用户将代码输入到您的应用中,然后发出HTTP GET请求与用户的电话号码和代码和Twilios响应告诉你,如果它是正确的。 – miknik

+0

谢谢我现在正在努力!我会将您的帖子更新为答案,再次感谢您 – Eaves12