仅针对一个特定函数分析连接超时

Parse Connection Times out only for one specific function

本文关键字:函数 超时 连接 一个      更新时间:2023-09-26

下面是我的云代码,我试图在其中创建一个朋友数据库,第一个和第三个函数都工作正常,但是AcceptFriendRequest函数超时,好像那里没有服务器,错误代码为100。 我很迷茫,因为这在 100% 的情况下都会发生。 感谢所有帮助。

Parse.Cloud.define("AddFriendRequest", function (request, response) {
var FriendRequest = Parse.Object.extend("FriendsIncoming");
var FRequest = new FriendRequest();
var user = request.user;
var query = new Parse.Query(Parse.User);
query.equalTo("username", request.params.username);
query.find({
    success: function (people) {
        if(people.length == 0)
        {
            response.success(-5);
            return;
        }
        var person = people[0];
        FRequest.set("OwnerID", user.id);
        FRequest.set("TargetFriend", person.id);
        FRequest.set("Status", 0);
        var query = new Parse.Query("FriendsIncoming");
        query.equalTo("OwnerID", user.id);
        query.equalTo("TargetFriendID", person.id);
        query.find({
            success: function (results) {
                if (results.length > 0) {
                    response.success(1);
                    return;
                }
                FRequest.save(null, {
                    success: function (Friend) {
                        response.success(2);
                    },
                    error: function (Friend, error) {
                        response.error(3);
                    }
                });
                response.error(-2);
            },
            error: function () {
                response.error(-1);
            }
        });
    }
    ,
    error: function (Friend, error) {
        response.error(-4);
    }
});

});
Parse.Cloud.define("AcceptFriendRequest", function (request, response) {

var user = request.user;
var query = new Parse.Query("FriendsIncoming");
query.equalTo("OwnerID", user.id);
query.equalTo("TargetFriendID", request.params.TargetFriendID);
query.find({
    success: function (results) {
        if (results.length > 0) {
            response.success(1);
            return;
        }
        FRequest.save(null, {
            success: function (Friend) {
                response.success(2);
            },
            error: function (Friend, error) {
                response.error(3);
            }
        });
        response.error(-2);
    },
    error: function () {
        response.error(-1);
    }
});
});


Parse.Cloud.define("RetrieveFriends", function (request, response) {
var query = new Parse.Query("FriendsAccepted");
var results = [];

query.find().then(function (Friends) {
for (var i = 0; i < Friends.length; i++) {
results.push(Friends[i]);
}
// success has been moved inside the callback for query.find()
response.success(results);
}, function (error) {
// Make sure to catch any errors, otherwise you may see a "success/error not called" error in Cloud Code.
response.error("Could not retrieve Posts, error " + error.code + ": " + error.message);
});
});

似乎 AcceptFriendRequest 中的 FRequest 没有初始化......在函数内部添加此内容。parse.com 云功能的超时时间为 15 秒,之后保存 3 秒。他们可能会改变它,因为他们正在关闭

var FriendRequest = Parse.Object.extend("FriendsIncoming");
var FRequest = new FriendRequest();