创建服务

现在我们有了 创建应用程序, 我们可以创建一个新的API端点来存储消息.

生成服务

在Feathers中,任何API端点都表示为 服务, 我们已经在 服务 中学到了这一点.要生成新服务,我们可以运行:

feathers generate service

首先,我们必须选择我们想要创建的服务类型.您可以在许多数据库和ORM中进行选择,但是对于本指南,我们将使用默认的 NeDB. NeDB是一个数据库,它将数据本地存储在一个文件中,不需要额外的配置或数据库服务器.

接下来,当询问服务名称时,输入 messages.然后按Enter键保留默认路径(/messages).

database connection string 也可以使用默认值进行回答. (在这种NeDB的情况下,这是它应该存储其数据库文件的路径.)

确认最后一个提示将生成一些文件并连接我们的服务:

Final Configuration

最终配置

Etvoilà!我们为消息提供了功能齐全的REST和实时API.

生成的文件

我们可以看到,创建了几个文件:

  • src/services/messages/messages.service.js - 在以下服务中注册服务的服务设置文件 Feathers生成器(CLI)

  • src/services/messages/messages.hooks.js - 一个文件,它返回一个应该在服务上注册的 钩子.

  • src/models/messages.model.js - 我们的消息模型.由于我们使用的是NeDB,因此只需实例化文件系统数据库.

  • test/services/messages.test.js - 服务的 Mocha 测试.最初,它只测试服务是否存在.

测试API

如果我们现在启动我们的API

npm start

我们可以转到 localhost:3030/messages 并看到来自我们的新消息服务的(空)响应.

我们还可以 POST 新消息和 PUT, PATCHDELETE 现有消息(通过 /messages/<_id>),例如从命令行使用 CURL:

curl 'http://localhost:3030/messages/' -H 'Content-Type: application/json' --data-binary '{ "text": "Hello from the command line!" }'

或者使用REST客户端,例如 Postman, 使用此按钮:

Run in Postman

如果我们现在再次转到 localhost:3030/messages, 我们将看到新创建的消息.

下一步是什么?

只需一个命令,我们就可以创建一个功能齐全的REST和实时API端点.接下来,让我们 添加身份验证 并确保消息仅发送给允许查看它们的用户.