创建一个 Web 应用程序,向用户提交的电话号码发送标准短信

问题描述 投票:0回答:4

我已经设法在客户端使用 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);
});
javascript node.js twilio
4个回答
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>

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

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


1
投票

这里是 Twilio 开发者布道者。

正如 Scott 所说,您必须小心您的帐户凭据,如果您尝试在前端使用 Twilio Node.js API,您将丢失帐户 SID 和身份验证令牌,恶意用户将耗尽您的帐户资金.

因此,您应该创建一个服务器来发送消息。正如 guavacat 指出的那样,有几个关于使用 Twilio 发送 SMS 消息的 教程 。还有一些更基本的使用 Twilio 发送短信的指南

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


0
投票

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

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


0
投票

使用cometchat怎么样? 我听说有免费选项。

© www.soinside.com 2019 - 2024. All rights reserved.