在twilio函数中获取回调函数时出错
我的调试器不断向我发送此函数的回调错误(请参阅下面的img链接)。我还想继续从我的函数返回studio,studio文档说我需要“成功返回(HTTP 20X)”我缺少什么在twilio函数中获取回调函数时出错,twilio,twilio-functions,Twilio,Twilio Functions,我的调试器不断向我发送此函数的回调错误(请参阅下面的img链接)。我还想继续从我的函数返回studio,studio文档说我需要“成功返回(HTTP 20X)”我缺少什么 exports.handler = function(context, event, callback) { const client = require('twilio')(); const msg = event.Msg; client.messages .create({ body: msg,
exports.handler = function(context, event, callback) {
const client = require('twilio')();
const msg = event.Msg;
client.messages
.create({
body: msg,
from: '+17322222222',
to: '+13477777777'
})
.then(message => console.log(message.sid));
};
如果我在代码末尾插入callback(),我会得到一个成功的返回,但是消息不会被发送
exports.handler = function(context, event, callback) {
const client = require('twilio')();
const msg = event.Msg;
client.messages
.create({
body: msg,
from: '+17322222222',
to: '+13477777777'
});
callback();
};
您需要在消息成功发送后执行回调 这可以使用Promissions或async/await语法完成,如下所示:
exports.handler = function(context, event, callback) {
let twilioClient = context.getTwilioClient();
twilioClient.messages
.create({
body: 'Hello World',
to: '+13477777777',
from: '+17322222222',
}).then(message => {
console.log(message.sid);
callback(null, {result: "success"});
})
.catch(error => {
console.log(error);
callback({result: "error"});
});
};
或
您需要在消息成功发送后执行回调 这可以使用Promissions或async/await语法完成,如下所示:
exports.handler = function(context, event, callback) {
let twilioClient = context.getTwilioClient();
twilioClient.messages
.create({
body: 'Hello World',
to: '+13477777777',
from: '+17322222222',
}).then(message => {
console.log(message.sid);
callback(null, {result: "success"});
})
.catch(error => {
console.log(error);
callback({result: "error"});
});
};
或
在回调@markokstate之前发送多条消息
exports.handler = function(context, event, callback) {
const twilioClient = context.getTwilioClient();
numbers = ['+14075551212','+18025551212'];
body = event.Body || 'The British are Coming!';
Promise.all(
numbers.map(number => {
return twilioClient.messages.create({
to: number,
from: '+15095551212',
body: body
});
})
)
.then(messages => {
console.log('Messages sent!');
callback(null, 'Messages sent!');
})
.catch(err => {
console.error(err);
callback(null, 'ERROR');
});
};
在回调@markokstate之前发送多条消息
exports.handler = function(context, event, callback) {
const twilioClient = context.getTwilioClient();
numbers = ['+14075551212','+18025551212'];
body = event.Body || 'The British are Coming!';
Promise.all(
numbers.map(number => {
return twilioClient.messages.create({
to: number,
from: '+15095551212',
body: body
});
})
)
.then(messages => {
console.log('Messages sent!');
callback(null, 'Messages sent!');
})
.catch(err => {
console.error(err);
callback(null, 'ERROR');
});
};
添加
.error:(e)=>console.error(e)
之后,然后捕获并记录来自create()承诺的错误。您可以插入我发布的代码吗,我是新成员我添加了回调函数,但消息没有发送添加。error:(e)=>console.error(e)
之后,然后捕获并记录来自create()的错误promise.你能在我发布的代码中插入吗?我是新来的我添加了回调函数,但消息没有发送。你能这样做吗?但在必须回调()之前发送多条消息@您可以这样做,但在必须回调()之前发送多条消息吗@艾伦