我一直在从事Radical Skills的Twilio项目,但在使用JavaScript响应传入的文本消息时遇到了麻烦。我可以使用XML的TwiML,但无法像示例所示那样在JavaScript中进行响应。
我在Twilio中的消息请求URL是/incoming/handle-incoming-text.xml。
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Redirect method="GET">incoming/sms.js</Redirect>
</Response>
当我的Twilio应用程序收到文本消息时,它将重定向到sms.js。我直接从示例中复制了此代码。
var twilio = require('twilio');
var resp = new twilio.TwimlResponse();
if( req.Body == 'hello'){
resp.message('Hi!');
}else if( req.Body == 'bye'){
resp.message('Goodbye');
}
console.log(resp.toString());
当我从手机向Twilio号码发送“ hello”短信时,收到以下响应。
GET /incoming/handle-incoming-text.xml 200 1ms - 240b
GET /incoming/sms.js 200 39ms - 251b
但是,我没有从Twilio号码中收到任何文字说“嗨!”。实际上,我根本没有得到回应。
当我检查错误日志时,它给我一个12300无效的Content-Type错误,并显示以下消息。
Twilio尝试从URL检索内容,但无法处理响应中的application / javascript Content-Type标头。请参阅Twilio XML标记文档,以获取有关有效Content-Type设置的更多详细信息。
我的响应中的标题之一是“ Content-Type application / javascript”。根据twilio-node帮助程序库文档,它应该输出XML。但是,它似乎无法正常工作。
我花了几个小时试图解决这个问题,但我仍然无法使其工作。
Twilio开发人员布道者在这里。
似乎Radical Skills项目缺少一些细节。我建议您通读我的同事Kevin编写的有关node.js帮助程序的博客文章。它指导您完成如何设置Web服务器以正确响应Twilio的过程。对于此特定问题,您可以查看有关处理SMS的部分。
希望能对您有所帮助,请告知我是否可以提供更多帮助。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句