承诺会破坏Parse云功能的功能吗?

时间:2014-09-29 17:47:11

标签: javascript parse-platform promise

尝试调试Parse云函数中的一些奇怪行为。

我一直想知道是否希望调用期望response.success()或response.error()的云函数等到promises得到解决/错误。

以下是一个例子:

Parse.Cloud.define("my_cloud_function", function(request, response) {
  myFunctionThatReturnsAPromise().then(function(msg) {
    msg = typeof msg !== 'undefined' ? msg : "";
    response.success(msg);
  }, function(error) {
    var message = typeof error.message !== 'undefined' ? error.message : "";
    response.error(message);
  });
});

这个云函数在myFunctionThatReturnsAPromise()实际返回其promise并执行其中一个块之前到达其执行结束。 除了超时之外,即使在完成执行后,my_cloud_function还是会使用响应对象可靠地设置调用的传递吗?

这看起来肯定是我观察到的,但我并不认为这种行为可以保证始终如一。

1 个答案:

答案 0 :(得分:0)

似乎我的代码示例中使用的promises工作正常。 Parse等待,直到调用其中一个响应回调,即使它到达调用函数块的末尾,只要有未完成的回调或未解决的promise。