我遇到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
请确保该值是一个整数类型,而操作列是一个字符串类型?也许你已经保存了一些对象,然后传递给它们不同的类型。 –
你能告诉我钱包表吗? –