gpt4 book ai didi

node.js - Twilio 11200 HTTP 检索失败——这是什么意思?

转载 作者:搜寻专家 更新时间:2023-10-31 23:11:38 25 4
gpt4 key购买 nike

我看到了一些关于 Twilio 的 HTTP 检索失败错误的问题。

在使用 Express 快速实现了一个 Node.js 消息服务器之后,我开始不断地遇到这个错误。它偶尔会比我的短信响应滞后 10-20 秒,并显示在调试器中。

我想知道我是否可能遗漏了一些明显的东西。因为我使用的是 Twilio 的示例代码,所以这似乎应该开箱即用。

我的代码如下:

app.post('/sms', (req, res) => {

const data = req.body
const message = data.Body
const sender = data.From

console.log('We\'ve received a text...')
console.log('Sender: ', sender)
console.log('Message: ', message)

const responses = [
'Message #1.',
'Message #2.',
'Message #3.',
'Message #4.'
]

client.sendMessage({

to: '+11231231234', // Any number Twilio can deliver to
from: '+11234564567', // A number you bought from Twilio and can use for outbound communication
body: responses[ Math.floor(Math.random() * 4) ] // body of the SMS message

}, function(err, responseData) { //this function is executed when a response is received from Twilio

if (!err) { // "err" is an error received during the request, if any

console.log(responseData.from); // outputs "+14506667788"
console.log(responseData.body); // outputs "Printing some stuff."

}

});

})

知道我做错了什么和/或如何解决这个问题吗?谢谢!

最佳答案

此处为 Twilio 开发人员布道师。

通过查看您的代码,您似乎是通过在 Twilio 控制台上设置 webhook 来响应短信。

当您使用 webhook 时,Twilio 期望您的页面返回 TwiML ,如果您的页面没有返回它,您将遇到间歇性的 1200 检索错误。您的页面当前未返回任何内容。

好消息是,您可以通过改用 TwiML 并返回如下内容来大大简化该代码:

<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Sms from="+14105551234" to="+14105556789">The king stay the king.</Sms>
</Response>

您可以使用 NodeJS 库生成该 TwiML,或像我上面那样手动创建 TwiML。在 NodeJS 中生成 TwiML 的示例如下:

app.post('/message', function (req, res) {
var resp = new twilio.TwimlResponse();
resp.message('some message you wanna add');
res.writeHead(200, {
'Content-Type':'text/xml'
});
res.end(resp.toString());
});

希望对你有帮助

关于node.js - Twilio 11200 HTTP 检索失败——这是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38469738/

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