为服务添加自定义端点(Feathersjs)

Add Custom Endpoint For Service ( Feathersjs )


我是 NodeJS 世界的新手。 我发现 FeatherJS 是一个很棒的 tools/framework 构建 API 服务的代码非常少

我需要添加自定义服务端点(例如:localhost/servicename/custom-end-point)。我还需要在这些端点从用户那里获取数据(可以是获取请求或 post)。

我已经浏览了以下链接,但那里没有明确提及,

https://docs.feathersjs.com/guides/basics/services.html
https://docs.feathersjs.com/api/services.html

使用以下命令安装 feathers-clinpm install -g @feathersjs/cli.

要创建服务,请导航到您的项目目录并运行此命令feathers generate service。它会询问一些问题,例如服务名称。

如果您还没有应用程序,那么 运行 创建一个应用程序的命令:feathers generate app.

就是这样!


更新:

假设您有一个名为 organizations 的服务,并且您想要创建一个自定义端点,例如 custom-organization。现在,在 services > organizations 中创建一个名为 custom-organizations.class.js 的文件。在您的 organizations.service.js 文件中添加以下行。

// Import custom class
const { CustomOrganizations } = require('./custom-organizations.class');

// Initialize custom endpoint    
app.use('/custom-organizations', new CustomOrganizations(options, app));

在您的 custom-organizations.class.js 文件中添加以下代码。

const { Service } = require('feathers-mongoose');
exports.CustomOrganizations = class CustomOrganizations extends Service {
  constructor(options, app) {
    super(options);
  }

  async find() {
    return 'Test data';
  }
};

现在,如果您向 /custom-organizations 端点发送一个获取请求,那么您应该得到 Test data.

希望对您有所帮助。

写了一篇关于它的文章here