在服务器端调用Parse函数

时间:2015-12-07 08:43:27

标签: javascript parse-platform cloud server-side

我要求解析器, 在服务器端(云代码),有没有办法调用其他函数中定义的函数?不应在客户端上调用函数

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

Parse.Cloud.define("otherFunction', function(request){

//call to getProfiles })

2 个答案:

答案 0 :(得分:2)

这可以通过开发策略解决。我一直习惯使用// this is just a "wrapper" for the simple JS function Parse.Cloud.define("getProfiles", function(request, response) { // the only thing I allow to happen here is: // 1) unwrap params... var param = request.params.param; // 2) call an unwrapped function by the same name (this assumes it returns a promise) getProfiles(param).then(function(result) { // invoke response success and error response.success(result); }, function(error) { response.error(error); }); }); // always have an unwrapped function named identically function getProfiles(param) { // do some work and (usually) return a promise } 作为包装外部调用函数的方法,总是按如下方式构建和命名它们......

    return 1 + compareTrials(trial, current);

云中的其他功能,包裹或解包,现在可以直接调用未包装的功能。

答案 1 :(得分:1)

Cloud code documentation建议按如下方式调用已定义的函数:

您可以使用Parse.Cloud.run

Parse.Cloud.run("getProfiles ", {
    //here you can pass the function request parameters
    userId: user.id
}).then(function(result) {
    //here you will handle the returned results (if function returned response.success())
    console.log(result);
}, function(error) {
    //handle errors if called function returned response.error()
    console.error(error);
});

希望有所帮助