gpt4 book ai didi

node.js - Twilio statusCallback 实现遇到麻烦

转载 作者:太空宇宙 更新时间:2023-11-03 23:20:17 24 4
gpt4 key购买 nike

我是 Twilio 的初学者。据我所知,我可以通过使用 statusCallback 来获取短信发送的状态,以便 POST 将发生在具有消息状态的回调 URL 上。但我在创建特定的 POST 端点时遇到了麻烦。这是我所拥有的:

  // Twilio API CALL
client.sendMessage({
to:userId,
from: metadata.myTwilioNumber,
body: message,
StatusCallback:'POST URL'
}, function(err, responseData) {
if (!err) {

} else {
logger.info(err);
}

我的 POST 端点是一个简单的 Node js(请求、响应)端点。

    var server = http.createServer ( function(request,response){
response.writeHead(200,{"Content-Type":"text\plain"});
if(request.method == "GET")
{
response.end("received GET request.")
}
else if(request.method == "POST")
{

console.log(request.CallStatus);
console.log(response);
console.log('receivedRequest');
response.end("received POST request.");
}
else
{
response.end("Undefined request .");
}
});

server.listen(4445);

有人可以帮助我获取响应的状态和 messageID 吗?目前,POST 正在被调用,但我无法获取消息详细信息和状态。

最佳答案

这里是 Twilio 开发者布道者。

您正在使用基本的 Node.js 标准库 http 模块,这将使从 POST 请求中提取信息需要做大量工作。我可以建议你尝试类似 express 的东西吗?与 body-parser相反。

您可以通过使用 npm 安装这两个模块来实现:

npm install express body-parser

然后您可以像这样重写传入消息应用程序:

const express = require('express');
const bodyParser = require('body-parser');

const app = express();

app.use(bodyParser.urlencoded({ extended: false }));

app.post('/', (req, res) => {
console.log(req.body.CallStatus);
res.sendStatus(200);
});

app.listen(4445, () => {
console.log('Application running on localhost:4445');
});

所有parameters that Twilio sends将在 req.body 对象上可用。

看看这个 tutorial on receiving SMS messages with Twilio in Node了解更多详细信息。

关于node.js - Twilio statusCallback 实现遇到麻烦,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50715866/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com