SuperAPI AI 工具集

402-frameworks-quarkus-rest

编程与开发

查看项目

更新于 10-16 11:03

技能介绍

Quarkus REST API 指南

在 Quarkus 上使用 Jakarta REST(JAX-RS)应用 REST API 设计原则。

用途

该技能面向需要在 Quarkus 项目中设计、审查或改进 REST API 的场景,帮助按统一规则实现或重构 JAX-RS 资源与异常映射,使接口在方法映射、状态码、错误格式、版本化、并发与缓存等方面保持一致。

主要能力

覆盖内容包括:资源类、@Path、HTTP 方法映射和资源 URI 设计;状态码、Location 头和 Response 构建;边界处的 DTO 与 Bean Validation,日期/时间字段使用 ISO-8601;ExceptionMapper 用于生成一致的错误 JSON(RFC 7807 Problem Details);API 版本化策略(URI 路径、Accept 头);使用 Idempotency-Key 头实现幂等;乐观并发控制:ETag、If-Match、If-None-Match;使用 Cache-Control 头进行 HTTP 缓存;API 弃用:Sunset 和 Deprecation 头;分页、排序和过滤查询参数;可选的通过 SmallRye 提供 /openapi;在 openapi.yaml 中维护 API-first 契约(代码生成);响应式与阻塞的考量、@RunOnVirtualThread;在过滤器层进行安全集成。

使用方式

范围:根据参考规则和好/坏代码示例应用建议。

约束:

  • 在应用 REST 更改之前,确保项目可以编译。应用改进后,运行完整验证。
  • 必须:在应用任何更改之前运行 ./mvnw compile 或 mvn compile
  • 前提条件:项目必须在应用 REST API 改进之前可以编译
  • 安全:如果编译失败,立即停止
  • 阻塞条件:编译错误必须由用户解决后才能继续
  • 验证:在应用改进后运行 ./mvnw clean verify 或 mvn clean verify
  • 应用之前:阅读参考以了解详细规则和示例

工作流:

  1. 阅读参考并评估项目上下文:阅读 references/402-frameworks-quarkus-rest.md,并在提出更改前检查当前项目设置。
  2. 收集范围并确定目标改进:识别请求的结果、约束以及要应用的最小安全更改集。
  3. 应用与框架一致的更改:按照参考模式和项目约定实现或重构配置/代码。
  4. 运行验证并报告结果:执行适当的构建/测试,并总结更改了什么、验证了什么以及任何后续操作。

参考:有关详细指导、示例和约束,请参阅 references/402-frameworks-quarkus-rest.md。

何时使用此技能

  • 审查或改进 Quarkus 项目中的 JAX-RS 资源
  • 在 Quarkus 上设计具有验证和错误处理的 HTTP API
  • 添加 API 版本化、幂等、ETag 并发或弃用头
  • 实现分页、排序或 RFC 7807 Problem Details 错误响应
  • 改进 Quarkus REST 资源和异常映射器

适用场景

适用于使用 Quarkus 与 Jakarta REST 构建或维护 HTTP API 的后端开发工作,尤其是需要统一错误响应格式、引入版本化与弃用策略、处理并发与缓存、规范参数查询或引入 API-first 契约的项目。

限制

应用更改前项目必须能够编译;若编译失败须立即停止,由用户解决编译错误后方可继续。应用改进后需运行完整验证。详细规则与示例见 references/402-frameworks-quarkus-rest.md。资料未提供关于收费、价格、平台支持范围或实际效果的信息。