Jersey 将参数或标题定义获取到组件节中以便可以重复使用
在OpenAPI Spec 3.0中,有一个组件部分,您可以在其中定义头、链接、模式等,然后将它们用于各种操作Jersey 将参数或标题定义获取到组件节中以便可以重复使用,jersey,jax-rs,swagger,swagger-2.0,openapi,Jersey,Jax Rs,Swagger,Swagger 2.0,Openapi,在OpenAPI Spec 3.0中,有一个组件部分,您可以在其中定义头、链接、模式等,然后将它们用于各种操作 components: # Reusable schemas (data models) schemas: ... # Reusable path, query, header and cookie parameters parameters: ... # Security scheme definitions (see Authentication
components:
# Reusable schemas (data models)
schemas:
...
# Reusable path, query, header and cookie parameters
parameters:
...
# Security scheme definitions (see Authentication)
securitySchemes:
...
# Reusable request bodies
requestBodies:
...
# Reusable responses, such as 401 Unauthorized or 400 Bad Request
responses:
...
# Reusable response headers
headers:
//...
我有许多在各种操作中通用的头,因此从开放API的角度来看,它们是在components部分中定义的,因此可以重用
在Swagger中,当您使用@Schema时,它最终会出现在components/Schema部分,但我很难看到如何将参数或头放入components部分,以便重用它们
注意:我使用的是jax-rs/Jersey
我编写了一个YAML,其中有一个在components/schema中定义的头和参数,然后根据它生成了JavaJAX-RS/Jersey,但它为每个API操作定义了头和参数。没有重复使用。它还缺少我在YAML的components/header中定义的header的描述
看看JDoc:
对于header,我使用ref属性来引用components部分中的某些内容,但问题是如何将其放入components部分
非常感谢您的帮助。目前,只有模式和安全模式可以通过Java注释定义 顺便说一句,作为一种解决方法,您可以在YAML规范文件中定义全局组件,并在运行时将其与注释驱动规范合并 看看这个关于组件/参数部分的问题
您的意思是如何使用Java注释定义可重用组件?e、 g.在Springfox中,我应该说使用Jersey/JAX_RS,我会更新question@Helen我已经更新了