Siento que no hay mucha explicación sobre la 'magia' detrás de la autenticación. Me gustaría combinar mi acción de registro para devolver un token JWT. ¿Alguien podría ayudarme?
Creo que sería algo como:
¿Puedo obtener ayuda o explicación sobre cómo usar la autenticación fuera del reino mágico? ¡Gracias!
Editar: Hice de esto un problema porque creo que debería haber más documentación sobre la autenticación manual. Esto es más una demostración, ya sé que hay un problema al respecto, como el # 467
@rstegg , parece que estás bastante cerca. Si app.authenticate()
no está definido, probablemente esté utilizando el middleware de registro antes del complemento de autenticación. Primero, asegúrese de que se use el complemento de autenticación.
const newUser = {
user: req.body.user,
pass: req.body.pass
}
app.service('users').create(newUser)
.then(user => app.authenticate(user)) // authenticate should be defined if you register middleware in the correct order.
.then(jwt => res.json(jwt));
Sin embargo, la aplicación generada seguirá usando la autenticación antigua, en cuyo caso tendrá que ser
const { email, password } = req.body;
app.service('users').create({ email, password })
.then(user => app.service('auth/local').create({ email, password }))
.then(authenticatedUser => res.json(authenticatedUser));
Este problema se ha bloqueado automáticamente ya que no ha habido ninguna actividad reciente después de que se cerró. Abra un nuevo problema con un enlace a este problema para errores relacionados.
Comentario más útil
Sin embargo, la aplicación generada seguirá usando la autenticación antigua, en cuyo caso tendrá que ser