2.11. 测试应用


有关以 dev 模式测试应用程序的信息,请参阅前面的在 dev mode 部分中运行该应用

您可以使用 curl 来测试以 JVM 或原生模式启动的应用程序。

  • 因为应用程序使用 Bearer 令牌身份验证,您必须首先从 Keycloak 服务器获取访问令牌来访问应用程序资源:
export access_token=$(\
    curl --insecure -X POST http://localhost:8180/realms/quarkus/protocol/openid-connect/token \
    --user backend-service:secret \
    -H 'content-type: application/x-www-form-urlencoded' \
    -d 'username=alice&password=alice&grant_type=password' | jq --raw-output '.access_token' \
 )
Copy to Clipboard Toggle word wrap

前面的示例获取用户 alice 的访问令牌。

curl -v -X GET \
  http://localhost:8080/api/users/me \
  -H "Authorization: Bearer "$access_token
Copy to Clipboard Toggle word wrap
  • 只有具有 admin 角色的用户才能访问 http://localhost:8080/api/admin 端点。如果您尝试使用之前发布的访问令牌访问此端点,您可以从服务器获得 403 响应。
curl -v -X GET \
   http://localhost:8080/api/admin \
   -H "Authorization: Bearer "$access_token
Copy to Clipboard Toggle word wrap
  • 要访问 admin 端点,获取 admin 用户的令牌:
export access_token=$(\
    curl --insecure -X POST http://localhost:8180/realms/quarkus/protocol/openid-connect/token \
    --user backend-service:secret \
    -H 'content-type: application/x-www-form-urlencoded' \
    -d 'username=admin&password=admin&grant_type=password' | jq --raw-output '.access_token' \
 )
Copy to Clipboard Toggle word wrap

有关编写依赖于 Keycloak 的 Dev 服务 的集成测试的详情,请参考 "OpenID Connect (OIDC) Bearer 令牌身份验证" 指南中的 Dev Services for Keycloak 部分。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat