Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Parse platform 在某些情况下,是否有方法跳过保存/删除前/后钩子?_Parse Platform - Fatal编程技术网

Parse platform 在某些情况下,是否有方法跳过保存/删除前/后钩子?

Parse platform 在某些情况下,是否有方法跳过保存/删除前/后钩子?,parse-platform,Parse Platform,问题是,有没有一种方法可以在不触发已建立的钩子的情况下显式运行save/delete等操作?像“滑雪”之类的。例如: // HOOK: beforeDelete Parse.Cloud.beforeDelete('Thing', function(request, response){ // STUFF // }); // FUNCTION: some other cloud function that will run an alternate delete behavior Par

问题是,有没有一种方法可以在不触发已建立的钩子的情况下显式运行save/delete等操作?像“滑雪”之类的。例如:

// HOOK: beforeDelete

Parse.Cloud.beforeDelete('Thing', function(request, response){ // STUFF // });



// FUNCTION: some other cloud function that will run an alternate delete behavior

Parse.Cloud.define('AltBeforeDeleteThing', function(request, response){
  var id = request.params.id;
  var thing = new Thing();
      thing.id = id;

  thing.destroy().then(function(){ // STUFF // });
  // Is there a way to skip the beforeDelete hook?

}
云函数中的
destroy()
将触发
beforeDelete
钩子。但我遇到过这样的情况,有例外情况会很好,这样我就可以围绕这些操作构建备用行为

我能想到的唯一方法是在
beforeDelete
hook中创建
if(!master)
子句,并在我想跳过该代码的任何时候使用
master
。但我觉得我在作弊,这会让我陷入一个无法逃避的角落


绕过已建立的钩子定义这些操作的替代行为的正确做法是什么?

老问题,但我会回答

  • 在对象中创建skip_beforeSave字段,检查字段是否存在,然后发出response.success()。

嗯。谢谢你。因此,唯一的方法是让逻辑直接在beforeSave中查找某个标志。我希望有什么东西能真正跳过钩子而不是通过,但是这个答案,作为唯一的答案,我会将它标记为已解决。我也在寻找同样的答案,不幸的是解析还不够成熟,无法提供跳过云代码的函数,他们的理由是它会影响安全性——能够从客户端跳过验证功能。