Parse platform 错误消息-失败:未调用成功/错误 Parse.Cloud.job(“作业计划”),函数(请求、响应){ var Group=Parse.Object.extend(“组”); var query=新建Parse.query(组); query.equalTo(“JobScheduled”,true); 查询.查找({ 成功:功能(结果){ 对于(变量i=0;i=parseInt(结果[i].get(“工作小时”)){ 结果[i]。设置(“作业计划”,false); 结果[i].set(“GroupType”、“Private”); 结果[i]。设置(“工作时数”,0); 结果[i].save(); var GroupMembers=Parse.Object.extend(“GroupMembers”); var query1=新的Parse.Query(GroupMembers); query1.equalTo(“GroupId”,结果[i].id); 查询1.查找({ 成功:功能(GRP){ 对于(var j=0;j

Parse platform 错误消息-失败:未调用成功/错误 Parse.Cloud.job(“作业计划”),函数(请求、响应){ var Group=Parse.Object.extend(“组”); var query=新建Parse.query(组); query.equalTo(“JobScheduled”,true); 查询.查找({ 成功:功能(结果){ 对于(变量i=0;i=parseInt(结果[i].get(“工作小时”)){ 结果[i]。设置(“作业计划”,false); 结果[i].set(“GroupType”、“Private”); 结果[i]。设置(“工作时数”,0); 结果[i].save(); var GroupMembers=Parse.Object.extend(“GroupMembers”); var query1=新的Parse.Query(GroupMembers); query1.equalTo(“GroupId”,结果[i].id); 查询1.查找({ 成功:功能(GRP){ 对于(var j=0;j,parse-platform,parse-cloud-code,Parse Platform,Parse Cloud Code,脚本正在正常运行(它会根据定义更新值)。但在解析日志中,它显示为Failed with:success/error未被调用。请就这个问题向我提出建议您根本不需要调用response.success()或response.error(),并且您应该始终至少调用其中一个 您真的应该存储查询和保存返回的所有承诺,并等待它们全部完成,然后根据这些承诺的结果调用success或error。Wain如果我在第一种方法中添加success/error,则第二种方法不起作用。如果我加上第二个,它将再次出现登录解

脚本正在正常运行(它会根据定义更新值)。但在解析日志中,它显示为Failed with:success/error未被调用。请就这个问题向我提出建议

您根本不需要调用
response.success()
response.error()
,并且您应该始终至少调用其中一个


您真的应该存储查询和保存返回的所有承诺,并等待它们全部完成,然后根据这些承诺的结果调用success或error。

Wain如果我在第一种方法中添加success/error,则第二种方法不起作用。如果我加上第二个,它将再次出现登录解析,失败:未调用成功/错误。您能帮我解决问题吗?您正在使用
。然后对查询执行
,但从未对返回的承诺执行任何操作或处理/捕获保存中的内部承诺-您了解承诺的用途吗?嗨,wain,现在我对代码进行了一些更改。查看现在发布的代码,然后也会出现登录解析,失败原因:success/error未调用。请告诉我其中有什么问题
Parse.Cloud.job("JobSchedule", function(request, response) {

    var Group = Parse.Object.extend("Group");
    var query = new Parse.Query(Group);
    query.equalTo("JobScheduled", true);
    query.find({
        success: function(results) {
            for (var i = 0; i < results.length; ++i) {
                var created = new Date(results[i].createdAt);
                var current = new Date();
                var timeDiff = Math.abs(current.getTime() - created.getTime());
                var horsDiff = timeDiff / (60 * 60 * 1000);
                if (horsDiff >= parseInt(results[i].get("JobHours"))) {
                    results[i].set("JobScheduled", false);
                    results[i].set("GroupType", "Private");
                    results[i].set("JobHours", 0);
                    results[i].save();

                    var GroupMembers = Parse.Object.extend("GroupMembers");
                    var query1 = new Parse.Query(GroupMembers);
                    query1.equalTo("GroupId", results[i].id);
                    query1.find({
                        success: function(grpresults) {
                            for (var j = 0; j < grpresults.length; ++j) {
                                grpresults[j].set("GroupType", "Private");
                                grpresults[j].save();
                            }
                        },
                        error: function(error) {
                            response.error(error);
                        }
                    })
                }
            }
        },
        error: function(error) {
            response.error(error);
        }
    });
});