【问题标题】:What is class in feathersjs and how to implementfeathersjs 中的类是什么以及如何实现
【发布时间】:2020-03-23 01:02:56
【问题描述】:

我是feathersjs 的新手,我尝试在feathers 中进行本地身份验证,同时在那里的users.class.js 文件下创建服务。我不知道在那里实施什么,所以请指导我

const { Service } = require('feathers-mongoose');

exports.Users = class Users extends Service {
  create(Users, email, username, password, role ) {
    Users.created_at = new Date();

    return super.create(Users, email, username, password, role );
  }
  update(id, Users, users) {
    Users.updated_at = new Date();

    return super.update(id, Users, users);
  }
};

【问题讨论】:

    标签: feathersjs feathers-authentication feathers-service


    【解决方案1】:

    我会查看docs 以了解有关服务的更多信息。

    在 Feathers 中,当您通过 CLI 生成服务时,它会创建三个文件。 service-name.class.js/.ts 包含您的服务定义。 Feathers 以 CRUD 方式操作一切。所以,你会在这里看到所有的 CRUD 方法。您可以自己定义服务,也可以使用 CLI 使用诸如 Mongoose 或 Sequelize 之类的适配器为您定义它。

    service-name.hooks.js/.ts 包含与此服务关联的所有挂钩。 Feathers 喜欢让你的逻辑保持简单和干净,选择通过可重用的钩子进行验证之类的事情,而不是直接修改服务逻辑。您说您想为您的服务添加身份验证。这就是你要做的地方。在 before:[] 钩子部分中,添加 authenticate(“jet”) 钩子您想要对其进行身份验证的方法。

    service-name.service.js/.ts 只是处理向框架注册的服务。一开始,我不会过多地处理这个文件。它只是执行一些设置,以便框架知道您的服务存在并将其附加到特定路由,例如/users

    希望这会有所帮助。

    【讨论】:

    • 感谢@PatrickL,这对我有很大帮助。在 service-name.service.js/.ts 我刚刚添加了module.exports = function (app) { const options = { name: 'users', Model: createModel(app), paginate: app.get('paginate') };
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-08
    • 2016-09-08
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多