我正在寻找一个身份验证系统,用户提交到一个 enpoint 并在这个端点生成一个 jwt,我不知道如何实现这个,我的客户端应用程序不使用电子邮件地址或存储的信息,它实际上是一个应用程序。我只需要一个端点,如果这些值的处理顺利,它将从提供的种子短语和密码计算一个值(并且它几乎总是会,除非有人向端点发送垃圾邮件)然后会发出一个 jwt.. 到目前为止羽毛 cli 的开箱即用功能意味着我需要使用本地策略并需要一个电子邮件地址,我无法在此找到任何演示......有人有任何指示吗?到目前为止,我的身份验证非常默认
const authentication = require('@feathersjs/authentication');
const jwt = require('@feathersjs/authentication-jwt');
const local = require('@feathersjs/authentication-local');
module.exports = function (app) {
const config = app.get('authentication');
// Set up authentication with the secret
app.configure(authentication(config));
app.configure(jwt());
app.configure(local());
// The `authentication` service is used to create a JWT.
// The before `create` hook registers strategies that can be used
// to create a new valid JWT (e.g. local or oauth2)
app.service('authentication').hooks({
before: {
create: [
authentication.hooks.authenticate(config.strategies)
],
remove: [
authentication.hooks.authenticate('jwt')
]
}
});
};
这是我的服务:
// Initializes the `aerAuth` service on path `/userauthendpoint`
const createService = require('feathers-memory');
const hooks = require('./userauthendpoint.hooks');
module.exports = function (app) {
const paginate = app.get('paginate');
const options = {
name: 'userauthendpoint',
paginate
};
// Initialize our service with any options it requires
app.use('/userauthendpoint', createService(options) );
// Get our initialized service so that we can register hooks and filters
const service = app.service('userauthendpoint');
service.hooks(hooks);
};
我对羽毛相对较新,但对构建身份验证系统(在 PHP 中)不熟悉