我的分析應用程序有一個GiftCode
集合,它不允許在類級別運行find
操作。爲什麼我不能在'beforeSave`函數中使用`useMasterKey()`?
我寫,防止重複碼從解析的儀表盤由我們的團隊正在進入一個beforeSave
雲功能:
Parse.Cloud.beforeSave('GiftCode', function (req, res) {
Parse.Cloud.useMasterKey();
const code = req.object.get('code');
if (!code) {
res.success();
} else {
const finalCode = code.toUpperCase().trim();
req.object.set('code', finalCode);
(new Parse.Query('GiftCode'))
.equalTo('code', finalCode)
.first()
.then((gift) => {
if (!gift) {
res.success();
} else {
res.error(`GiftCode with code=${finalCode} already exists (objectId=${gift.id})`);
}
}, (err) => {
console.error(err);
res.error(err);
});
}
});
正如你所看到的,我打電話Parse.Cloud.useMasterKey()
(這是在解析雲中運行),但我仍然得到以下錯誤:
This user is not allowed to perform the find operation on GiftCode.
我用其他正常功能的雲和useMasterKey()
我能夠根據需要進行find
操作。
是useMasterKey()
不適用於beforeSave
功能?
謝謝 - 那爲我做了訣竅。 – namuol