如何使用feathersjs在没有restful的情况下声明内部服务



>FeathersJS提供了一种在nodejs之上创建restful API的好方法。但是我还没有找到一种方法来创建我的应用程序内部使用的服务,而无需休息。

下面是一个代码示例:

const myService = {
  find(params [, callback]) {},
  get(id, params [, callback]) {},
  create(data, params [, callback]) {},
  update(id, data, params [, callback]) {},
  patch(id, data, params [, callback]) {},
  remove(id, params [, callback]) {},
  setup(app, path) {}
}
app.use('/my-service', myService);

在其他服务中,他们可以使用app.service('/my-service')来引用该服务实例。但它也会myService实例上公开一个 restful API。如何在不公开的情况下创建服务?我只想在我的应用程序中使用该服务。

您可以将 disallow 钩子与 external(或 restsocketio ) 参数一起使用来禁用外部访问:

const { disallow } = require('feathers-hooks-common');
const myService = {
  async find(params) {},
  async get(id, params) {},
  async create(data, params) {},
  async update(id, data, params) {},
  async patch(id, data, params) {},
  async remove(id, params) {},
  setup(app, path) {}
}
app.use('/my-service', myService);
app.service('my-service').hooks({
  before: disallow('external')
});

相关内容

最新更新