5.6. REST API

REST API 是一个 CUBA 扩展插件,为应用程序提供 CRUD 操作、执行预定义的 JPQL 查询、执行服务方法以及其他通过 REST web 服务能实现的功能。REST API 也是 frontend UI 与服务器通信的标准方式。参阅 官方文档 了解更多关于该扩展插件的内容。

需要在项目中使用 REST API,可以通过 Studio 的 CUBA Add-Ons 窗口进行安装。

Studio 对 REST API 功能提供如下支持:

  • 自动生成所需的应用程序属性。

  • 在 CUBA 项目树创建并展示配置文件。

  • 帮助注册需要开放为 REST API 的服务方法。

客户端凭证

当 Studio 为项目添加 REST API 之后,会自动生成唯一的 cuba.rest.client.idcuba.rest.client.secret 应用程序属性,并写入 web-app.properties 文件。REST API 客户端使用这些凭证与服务器做验证。推荐在生产环境修改这两个属性的值。

项目树部分

一旦为项目添加了 REST API 扩展插件,CUBA 项目树便能展示 REST API 部分:

tree section

这部分会显示下列配置文件:

如果没有看到上面提到的文件,可以手动创建:右键点击 REST API 部分,然后通过 Create REST Queries ConfigurationCreate REST Services Configuration 菜单创建:

create config files

创建的配置文件会自动在 web-app.properties 文件注册。之后可以手动修改这两个文件内容。

开放中间件服务方法

如需通过 REST API 调用 中间件服务 方法,需要在 rest-services.xml 配置文件注册这些服务方法。

使用 Studio 提供的快捷操作可以快速将需要的服务方法添加至注册文件:

  • 打开服务接口类,并将光标移至需要添加的方法处。

  • 按下 Alt+Enter (Option+Enter)列出可用的快捷操作。

  • 选择 Register rest method 操作即可。

  • 选中的方法签名会添加到 rest-services.xml 中,从服务接口快速跳转至 XML,可以点击侧边栏的箭头标记:

register rest method