我遇到afterSave實現我的註冊邏輯問題。 我必須做的是在用戶進行註冊時在Wallet類中添加一個交易,並給他一些信用。所以,我有我的雲碼功能:解析雲代碼afterSave返回錯誤107不能POST POST
// Add welcome bonus on signup
Parse.Cloud.afterSave(Parse.User, (request) => {
// commit transaction only on signup completed with phone number
if (request.object.get('username')) {
const wallet = new Parse.Object('Wallet')
wallet.set('value', 100)
wallet.set('action', '+')
wallet.set('description', 'welcome bonus')
wallet.set('user', {
__type: 'Pointer',
className: '_User',
objectId: request.object.id
})
wallet.save(null,{useMasterKey: true}).then(
(result) => console.log('objectId',result.id),
(error) => console.log('code:',error.code,'message:',error.message)
)
}
})
由於Parse.Cloud.useMasterKey()已被棄用我follwed關於如何使用上保存方法useMasterKey選項解析文檔,但我仍然得到這個錯誤:
info: afterSave triggered for _User for user undefined:
Input: {...} className=_User, triggerType=afterSave, user=undefined
code: 107 message: Received an error with invalid JSON from Parse: Cannot POST /classes/Wallet
而且THI s是我的錢包表:
|值:Number | action:String |描述:String |用戶:指針< _User> |
和默認列createdAt,updatedAt,OBJECTID和ACL
我工作在本地主機上。
關於發生了什麼事情的任何想法?
不能使用wallet.save()而不使用裏面的參數?如果這不起作用,請嘗試在代碼頂部添加{useMasterKey:true} – Lyon
請確保該值是一個整數類型,而操作列是一個字符串類型?也許你已經保存了一些對象,然後傳遞給它們不同的類型。 –
你能告訴我錢包表嗎? –