node.js – 什么是Everyauth承诺?

我不明白大家的承诺是什么.

我看到我需要退回一个承诺对象或用户,但是什么是一个永恒的承诺?

当您具有执行身份验证的功能时,这是非常有用的,但是异步执行.您不能直接从函数中返回用户信息(因为您必须等待回调才能触发),因此您将返回承诺.当异步请求完成时,这是一个特殊对象,充当最后填充用户信息的“占位符”.

the documentation的例子:

function (session, accessToken, extra, oauthUser) {
  var promise = this.Promise();
  asyncFindUser( function (err, user) {
    if (err) return promise.fail(err);
    promise.fulfill(user);
  });
  return promise;
}

这意味着呼叫上下文可以直接进行工作,直到真正需要用户信息(同时,同时异步请求正在完成);如果用户信息尚不可用,则必须在稍后阶段等待.你可能会认为它是一个非常具体的线程创建和加入的情况.

Promise”是一种通用术语,涵盖了各种语言和语境中的这种功能:

In computer science, future, promise, and delay refer to constructs used for synchronization in some concurrent programming languages. They describe an object that acts as a proxy for a result that is initially not known, usually because the computation of its value has not yet completed.

http://stackoverflow.com/questions/8761230/what-are-everyauth-promises

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:node.js – 什么是Everyauth承诺?