Search code examples
javascriptparse-server

return error object instead of string in parser server


Earlier I could return an error object in cloud code/before/after hook using response.error(111, errObject) in Parse server version in 2.7.x

Parser server version 3.x+ requires me to throw Error object or string now. I was wondering how can I return a full error object without stringifying it. Returning object in response is handy because I can say the user which form inputs are missing for example.


Solution

  • Found the solution, Now I have to explicitly call Parse.Error

    const userBeforeSave = (req) => {
      const result = Joi.validate(req.object.toJSON(), userValidator, { allowUnknown: true })
      if (result.error) {
        throw new Parse.Error(101, {msg: 'I cannot allow'})
      }
    }