Wie kann ich auf die Details des Benutzers, der die Anforderung von einem Modell HakenZugang Request-Header von before Modell Haken
Comment.beforeSave = function(next,com) {
//Want to add 2 more properties before saving
com.added_at = new Date();
com.added_by = //How can i set the user id here ??
//In case of a Remote hook i have ctx in param and i can get user id like this ctx.req.accessToken.userId; But in Model Hook how can i do the same?
next();
};
Gibt es eine Möglichkeit, dies zu tun zu erhöhen? Ich habe versucht mit Remote-Haken für die wichtigsten Artikel in der Art und Weise
MainItem.beforeRemote('**', function(ctx, user, next) {
if(ctx.methodString == 'leave_request.prototype.__create__comments'){
ctx.req.body.added_by = ctx.req.accessToken.userId;
ctx.req.body.added_at = new Date();
console.log("Added headers as .."+ctx.req.body.added_by);
}
else{
ctx.req.body.requested_at = new Date();
ctx.req.body.requested_by = ctx.req.accessToken.userId;
console.log("Added header @ else as .."+ctx.req.body.requested_by);
}
next();
});
und ich erhalte die Konsolenprotokolle richtig, wenn ich Anfrage aus dem Explorer, aber Aber der Explorer zurückkehren mir immer den Fehler
„Fehler“: { „name“: „Validation“, „Status“: 422, "message": "Die comment
Instanz ist nicht gültig Details: added_by
darf nicht leer sein; added_at
kann nicht leer sein..", "status": 422, "Details": { "Kontext" : "Kommentar", "Codes": { "added_by": [ "Präsenz" ], "added_at": [ "Präsenz" ] }, "Nachrichten": { "added_by": [ "nicht leer sein"], "added_at": [ „kann 't be blank " ] } }, " Stapel ":" ValidationError: Die comment
Instanz ist nicht gültig. Details: added_by
kann nicht leer sein; added_at
kann nicht leer sein. \ N " } }
und mein Modell ist wie
"properties": {
"body": {
"type": "string",
"required": true
},
"added_by": {
"type": "number",
"required": true
},
"added_at": {
"type": "date",
"required": true
},
"leave_request_id":{
"type": "number",
"required": true
}
}
Mein Kommentar-Modell wird nicht direkt an API ausgegeben. Also beforeRemote wird nicht dafür ausgeführt. Mein Endpunkt ist MainItem//Kommentar. So beforeRemote wird nur für MainItem ausgeführt –
In diesem Fall müssten Sie den Hook Ihres MainItem-Modells festlegen und versuchen, die userId in einer globalen oder in den Kommentareinstellungen zu speichern. Dies ist nicht optimal und könnte zu Fehlern bei gleichzeitigen Anfragen führen. Entschuldigen Sie. – amenadiel
ich editted frage jetzt, können Sie jetzt helfen? –