创建一个Web应用程序,将标准文本消息发送到用户提交的电话号码

时间:2016-11-21 22:49:38

标签: javascript node.js twilio

我已经设法在客户端使用Twilio的API,发送短信但似乎无法将它们整合在一起。我想创建一个简单的HTML表单,其中有一些文本提示用户输入电话号码,有一个文本字段接受数字字符串,一个按钮将字符串作为输入变量发布,也就是要发短信的数字。不确定在下面点击按钮我的javascript函数(send-sms.js)。无法在网络上找到任何想法或例子?

/* send-sms.js */
// Twilio Credentials
var accountSid = 'ACd8a0efd010e09e09ce506fe1d4612e11';
var authToken = 'AUTH_TOKEN';

//require the Twilio module and create a REST client
var client = require('twilio')(accountSid, authToken);

client.messages.create({ 
    to: "+1646456789",
    from: "+19171234567",
    body: "Hellow from Twilio?",
}, function(err, message) {
    console.log(message.sid);
});

3 个答案:

答案 0 :(得分:2)

为什么不创建一个函数,然后调用它?无论如何,这听起来像你想要的。我错了。但是,您希望使用Twilio API的客户端非常小心。这会带来很大的安全风险。有人可以轻松获取帐户凭据,以便用您的钱发送大量短信。

function sendTextMessage() {

  var phoneNumber = $("#phoneNumberField).val();

  var accountSid = 'ACOUNTSID';
  var authToken = 'AUTHTOKEN';

  var client = require('twilio')(accountSid, authToken);

  client.messages.create({ 
    to: phoneNumber,
    from: "+19171234567",
    body: "Hellow from Twilio?",
  }, function(err, message) {
    console.log(message.sid);
  }); 

}

然后有一个表格......

<input type="text" id="phoneNumberField" />
<button type="button" onclick="sendTextMessage()">Send Text Message</button>

更好的选择是在服务器端运行它,并通过html表单通过POST / GET和HTTPS / HTTP将其发送到服务器端应用程序。客户端脚本创建了一个很棒的界面,而且速度很快。但是,您也可以使用jQuery提交表单以获得相同的体验,或者使用AngularJS,例如使用后端API来执行数据操作和逻辑。

其他人已经提到过,但创建一个Node.js服务器并在那里运行它比在客户端浏览器上运行它更受欢迎。

答案 1 :(得分:0)

Twilio开发者传道者在这里。

正如斯科特所说,您必须小心使用您的帐户凭据,如果您尝试在前端使用Twilio Node.js API,您将丢失帐户SID和身份验证令牌,恶意用户将运行您的帐户钱。

因此,您应该创建一个发送邮件的服务器。正如guavacat指出的,有几个tutorials available on sending SMS messages with Twilio。还有一些更基本的guides on sending SMS with Twilio

我建议您阅读那些将指导您设置服务器并从中发送消息的内容。

答案 2 :(得分:0)

您需要服务器端脚本(如PHP或Node.js)才能连接到Twilio API 目前,由于Cross Origin限制,您的脚本不允许使用它,因此也不建议您使用它,因为这会暴露您的帐户凭据。

最好的办法是创建一个连接到Twilio的服务器端脚本,并将其添加到表单提交中。