所以我有以下代码来循环遍历一个对象:
for(var x in block){
sendTextMessage(block[x].text, sender, function(callback){
//increment for?
})
}
对于每次迭代,我想做一个请求(发送 Facebook 消息),只有在该请求完成后,我才想要进行下一次迭代,这是因为没有任何回调,消息将不会以正确的顺序发送.
function sendTextMessage(text, sender, callback) {
let messageData = { text:text}
request({
url: 'https://graph.facebook.com/v2.6/me/messages',
qs: {access_token:token},
method: 'POST',
json: {
recipient: {id:sender},
message: messageData,
}
}, function(error, response, body) {
if (response.statusCode >= 200 && response.statusCode < 300){
if(callback) callback('success')
}
})
}
我以前遇到过这个问题,但无法解决,我该怎么办?
如果您有任何问题,请询问。谢谢你。