答应returns一个承诺?

Promise that returns a promise?

我正在尝试创建以下承诺语法:

我想在 post 函数之后调用辅助 then,我该怎么做?

randomBytes.then(function() {
   return requestPromise.post(....);
}).then(function() {
   // I want this part to be called after the POST
});

事实上这已经有效(正如评论所说 - 假设 .post return 是一个承诺)几乎是 then 的要点 - 它允许你等待东西。

如果您return来自then的承诺,链将采用其状态,因此只会调用以下段完成后

randomBytes.then(function() {
   return requestPromise.post(....);
}).then(function() {
   // WILL ALWAYS BE CALLED AFTER THE POST
});

应该可以。 您可以添加 'then' 以获得 post 值;

randomBytes.then(function() {
   return requestPromise.post(....).then((value,...)=>{return value;});
}).then(function(value) {
   //console.log(value);
});