我是Node.js的新手,但我知道它是在服务器端。当我在终端中运行我的app.js文件时,它会发送短信,但我最终要做的是让用户完成表单,按下按钮后,向他们发送短信以验证他们的提交。我正在使用Twilio服务来帮助实现这一目标。它目前没有按下按钮发送消息。
这是我的app.js文件:
var accountSid = process.env.TWILIO_ACCOUNT_SID;
var authToken = process.env.TWILIO_AUTH_TOKEN;
var client = require('twilio')(accountSid, authToken);
app.get('/testtwilio', function(req, res) {
client.messages.create({
to: "+1receivingNumber",
from: "+myTwilioNumber",
body: "Testing, testing, testing"
}, function(err, message) {
if (err) {
console.log(err);
} else {
console.log(message.sid);
}
});
})
我的Javascript文件:
$('#buttons').on('click', function(e) {
$.ajax({
type: 'POST',
url: '/testtwilio',
data: {
"To": userCellPhone,
"From": "+1myTwilioNumber",
"Body": "Ahoy! Testing"
},
beforeSend: function(xhr) {
...
},
success: function(data) {
console.log(data);
},
error: function(data) {
console.log(data);
}
});
});
最后,我的html按钮:
<button type="submit" id="buttons" class="buttons">SUBMIT</button>
老实说,我甚至不确定这是可能的,但我一直在寻找,并且无法找到任何直接的解决方案。任何帮助表示赞赏!
答案 0 :(得分:5)
您的app
变量未定义。如果您想使用express
框架,就像您已经遵循的教程一样,您需要在app.js中注册它,如下所示:
var express = require('express');
var app = express();
结合关于POST的答案/评论,这应该会在你的路上看到你。
的Nb。您需要在节点模块中安装express。从根目录中的命令行:
npm install --save express
答案 1 :(得分:3)
nodeJs route需要GET。但是你的ajax会发出POST请求。尝试:
app.post('/testtwilio', ...