Sto creando un'API con diversi livelli di accesso, il "client" può solo essere letto. Ma "admin" deve avere accesso in scrittura. I diversi ruoli vengono controllati ogni volta come criterio in Sails.js e impostano i diritti nella req.session.Autenticazione Sails.js per azioni modello
Ho solo bisogno di dare al 'client' alcun accesso per creare, aggiornare ed eliminare azioni, quindi ho creato un controller che ha quelle azioni CRUD e controlla se l'utente ha il ruolo giusto. Tutte le azioni con accesso limitato vengono reindirizzate tramite routes.js a questo controller.
Ora il mio problema è che quando sto eliminando una voce come: Category.destroy (req.param ('id')); Mi dà undefined e non ha alcun metodo fatto. A differenza di cui parla la documentazione sono riuscito a risolvere il problema con la creazione di questo:
var deleted = Category.destroy(req.param('id'), function(err, status) {
if (status == 1){
res.json({message: 'Category is deleted'});
} else {
res.json({message: 'Oops, something went wrong'});
}
});
Ma ci deve essere un altro modo per applicare l'autenticazione a quelle azioni di base. Perché ora devo scrivere tutte le azioni.
C'è qualcosa di sbagliato nel codice per la funzione di cancellazione che ho scritto? Ed è possibile applicare politiche e reindirizzare a azioni di modello predefinite, come se non esistesse affatto l'autenticazione?
Grazie per la risposta. Penso che il reindirizzamento all'interno delle vele fosse una parte delle azioni non funzionanti correttamente. Ora con la nuova riscrittura funziona come dovrebbe. Ma grazie per il tuo tempo! – Loed