如果使用 Parse 主密钥,是否可以检查 beforeSave 方法内部?

Is it possible to check inside beforeSave method if Parse master key is used?

在我的应用程序中没有重复项很重要,所以我有以下代码:

Parse.Cloud.beforeSave("Thing", function(request, response) {
    var newEntryThing = request.object;
    var thingId= newEntryThing.get("thingId");
    var queryThings= new Parse.Query("Thing");
    queryThings.equalTo("thingId", thingId);

    queryThings.first({
        success: function(results) {
            if(results) {
                response.error({errorCode:400,errorMsg:"Thing already exist"});
            } else {
                response.success();
            }
        },
        error: function(error) {
            response.success();
        }
    });
});

到目前为止,这适用于该目的,问题是由于逻辑原因,即使 Parse 仪表板也无法再更新此 class。我在想的是首先检查是否使用 masterkey 调用该方法,如果是,那么这个逻辑将被绕过并允许更新。 如果使用 Parse 主密钥,是否可以检查这个 beforeSave 方法?

要在 beforeSave() 内部检查是否使用了 maskerkey(或者如果您从仪表板发出请求)尝试在您的云代码中添加此条件:

if (request.master){
    . . .//dosomething
}