3.2. 测试基本功能

  • 当 Gradle 刷新了项目依赖之后,在 Studio 中,您应该能在左边的 CUBA 项目树看到 REST 元素。

  • 按照 安全 章节配置安全管理:

    • 创建一个包含 cuba.restApi.enabled 特殊权限的角色,并给角色赋予能读取必要实体和实体属性的权限。

    • 为用户分配该角色。

  • 启动应用程序,并用命令行工具 curl 测试 API:

    1. 请求 OAuth token

      curl -X POST \
        http://localhost:8080/app/rest/v2/oauth/token \
        -H 'Authorization: Basic Y2xpZW50OnNlY3JldA==' \
        -H 'Content-Type: application/x-www-form-urlencoded' \
        -d 'grant_type=password&username=admin&password=admin'

      您应当能得到一个带有 access_token 的响应。这个 token 可以在将来的请求中用作 Authorization header。

    2. 请求角色列表 (用上一步获取的 token 替换 <access_token>):

        curl -X GET \
        'http://localhost:8080/app/rest/v2/entities/sec$Role' \
        -H 'Authorization: Bearer <access_token>'

      响应中会包含所有的角色,但是需要保证用在获取 token 时的用户有权限读取 sec$Role 实体。