API 版本
要启用 API 版本控制,请使用 WebMvcConfigurer 的 ApiVersionConfigurer 回调:
您可以通过以下列出的内置选项之一解析版本,或者使用自定义 ApiVersionResolver:
-
请求头
-
请求参数
-
路径段
-
媒体类型参数
要从路径段解析,您需要指定预期包含版本的路径段索引。路径段必须声明为 URI 变量,例如 "/{version}"、"/api/{version}" 等,其中实际名称并不重要。由于版本通常在路径的开头,请考虑通过 路径匹配 选项将其作为所有处理程序的公共路径前缀进行外部配置。
默认情况下,版本通过 SemanticVersionParser 解析,但您也可以配置自定义的 ApiVersionParser。
为了方便起见,支持的版本会透明地从请求映射中声明的版本中检测出来,但您可以通过 MVC 配置中的一个标志将其关闭,并仅将配置中明确配置的版本视为支持的版本。版本不受支持的请求将被 InvalidApiVersionException 拒绝,导致 400 响应。
您可以设置 ApiVersionDeprecationHandler 以将有关已弃用版本的信息发送给客户端。内置的标准处理程序可以根据 RFC 9745 和 RFC 8594 设置 "Deprecation"、"Sunset" 和 "Link" 头。
一旦配置了 API 版本控制,您就可以开始根据请求版本将请求映射到 控制器方法。