gpt4 book ai didi

javascript - Nodejs POST 请求的异步问题

转载 作者:行者123 更新时间:2023-12-02 14:13:10 25 4
gpt4 key购买 nike

我试图在发布请求中应用自定义函数,但它返回未定义。

我知道这是某种异步问题,我只是不知道可能是什么问题。

问题所在的代码块

console.log(text); // <---- This shows correct value
A.prepare(function (text) {
console.log(text) // <---- This shows undefined
B.write(text, function (response) {
sendTextMessage(sender,response.message)
return response.message;
});
});

完整代码

app.post('/webhook/', function (req, res) {
// addPersistentMenu();
let messaging_events = req.body.entry[0].messaging;
for (let i = 0; i < messaging_events.length; i++) {
let event = req.body.entry[0].messaging[i];
let sender = event.sender.id;
if (event.message && event.message.text) {
let text = event.message.text;
console.log(text);
A.prepare(function (text) {
B.write(text, function (response) {
sendTextMessage(sender,response.message)
return response.message;
});
});
}
if (event.postback) {
let text = JSON.stringify(event.postback);
sendTextMessage(sender, "Postback received: "+text.substring(0, 200));
continue;
}
}
res.sendStatus(200)
});

最佳答案

这是一个范围问题,而不是异步问题。

在行

A.prepare(function (text) {

text 实际上是传递给函数并在函数本身内部使用的参数。它并不引用您在上面一行中记录的文本。

关于javascript - Nodejs POST 请求的异步问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39315764/

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