これは単純なものだと思いますが、Parse.com の Cloud Code でチェーン関数を機能させることができません。私はそれが可能であることを知っています. ;>
以下は、それがどのように機能すると私が考えるかを示す簡単なテスト機能チェーンですが、機能しません。イベントresponse.error
ではエラーが発生するようですが、成功すると次のようになります。
{"code":141,"error":"success/error was not called"}
テスト関数は次のとおりです。
Parse.Cloud.define("initialFunction", function(request, response) {
var player = request.params.player;
Parse.Cloud.run("chainedFunction",{ player: player.id },{
sucess: function(results) {
response.success(results);
},
error: function(results, error) {
response.error(errorMessageMaker("running chained function",error));
}
});
});
Parse.Cloud.define("chainedFunction", function(request, response) {
var player = Parse.Object.extend("User");
var findPlayer = new Parse.Query(player);
findPlayer.get(request.params.player, {
success: function(player) {
var games = player.relation("games");
games.query().find({
success: function(games) {
response.success(games);
},
error: function(players, error) {
response.error(errorMessageMaker("finding games",error));
}
});
},
error: function(player,error) {
response.error(errorMessageMaker("finding player",error));
}
});
});
..そして、これが参照用の関数への最初の呼び出しです(ただし、これは問題ではないと確信しています):
curl -X POST \
-H "X-Parse-Application-Id: <id>" \
-H "X-Parse-REST-API-Key: <id>" \
-H "Content-Type: application/json" \
-d '{"player":"<id>"}' \
https://api.parse.com/1/functions/initialFunction