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.id 和 cuba.rest.client.secret 应用程序属性,并写入 web-app.properties
文件。REST API 客户端使用这些凭证与服务器做验证。推荐在生产环境修改这两个属性的值。
项目树部分
一旦为项目添加了 REST API 扩展插件,CUBA 项目树便能展示 REST API 部分:
这部分会显示下列配置文件:
rest-queries.xml
- 包含 预定义的 JPQL 查询。rest-services.xml
- 包含对外开放的 服务方法列表 ,可以通过 REST API 调用。
如果没有看到上面提到的文件,可以手动创建:右键点击 REST API 部分,然后通过 Create REST Queries Configuration 和 Create REST Services Configuration 菜单创建:
创建的配置文件会自动在 web-app.properties
文件注册。之后可以手动修改这两个文件内容。
开放中间件服务方法
如需通过 REST API 调用 中间件服务 方法,需要在 rest-services.xml
配置文件注册这些服务方法。
使用 Studio 提供的快捷操作可以快速将需要的服务方法添加至注册文件:
打开服务接口类,并将光标移至需要添加的方法处。
按下 Alt+Enter (Option+Enter)列出可用的快捷操作。
选择 Register rest method 操作即可。
选中的方法签名会添加到
rest-services.xml
中,从服务接口快速跳转至 XML,可以点击侧边栏的箭头标记: