Ich habe eine Feathersjs API mit einer messages service
. Ich möchte das Nachrichtenmodell mit feathers-hooks-validate-joi
Modul validieren.Joi Validierung Feathersjs
Hier ist meine messages-hooks.js
Datei:
const validate = require('feathers-hooks-validate-joi');
const schema = require('./messages.validator');
module.exports = {
before: {
create: [validate.form(schema)],
//others method fields
},
after: {...},
error: {...}
};
Hier ist meine messages.validator.js
Datei:
const Joi = require('joi');
const schema = Joi.object().keys({
name: Joi.string().trim().min(2).required(),
text: Joi.string().trim().min(2).required()
});
module.exports = {schema};
Wenn ich versuche, eine Nachricht über curl schreiben:
curl 'http://localhost:3030/messages/' -H 'Content-Type: application/json' --data-binary '{ "name": "Hello", "text": "World" }'
I erhalten Sie diese Fehlermeldung:
{
"name": "BadRequest",
"message": "Invalid data",
"code": 400,
"className": "bad-request",
"data": {},
"errors": {
"name": "\"name\" is not allowed",
"text": "\"text\" is not allowed"
}
}
Fehle ich etwas? Benutze ich den Federnhaken richtig?
Wenn ich Ihre Lösung versuche ich diese Fehlermeldung bekommen: '{ "name": "GeneralError", "message":„Kann nicht lesen property 'convert' von undefined ", " code ": 500, " className ":" allgemeiner Fehler ", " Daten ": {}, " Fehler ": {} }' –