前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >@ApiResponse & swagger 注解

@ApiResponse & swagger 注解

作者头像
收心
发布2022-03-30 15:01:31
2K0
发布2022-03-30 15:01:31
举报
文章被收录于专栏:Java实战博客

一些公司没有专业的开发文档,后台提供的Knife4j接口没有直接的展示结果,特此追加新的内动

代码语言:javascript
复制
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 描述操作的可能响应。
这可用于描述 REST API 调用中可能的成功和错误代码。您可能会或可能不会使用它来描述操作的返回类型(通常是成功的代码),但也应该使用ApiOperation来描述成功的响应。
这个注解可以应用在方法或类级别;只有在方法级别或抛出的异常中未定义具有相同代码的 @ApiResponse 注释时,才会解析类级别注释
如果您的 API 对这些响应使用不同的响应类,您可以在此处通过将响应类与响应代码相关联来描述它们。请注意,Swagger 不允许单个响应代码有多种响应类型。
这个注解不直接使用,不会被 Swagger 解析。它应该在ApiResponses中使用。
请参阅:
ApiOperation , ApiResponses
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface ApiResponse {
    /**
     * 响应的 HTTP 状态代码。
     * 该值应该是正式的HTTP 状态代码定义之一。
     */
    int code();

    /**
     * 伴随响应的人类可读消息。
     */
    String message();

    /**
     * 描述消息有效负载的可选响应类。
     * 对应于响应消息对象的 `schema` 字段。
     */
    Class<?> response() default Void.class;

    /**
     * 指定对响应类型的引用。指定的引用可以是本地的或远程的,将按原样使用,并将覆盖任何指定的 response() 类
     */
    String reference() default "";

    /**
     * 与响应一起提供的可能标头列表。
     * 返回值:
     * 响应标头列表。
     */
    ResponseHeader[] responseHeaders() default @ResponseHeader(name = "", response = Void.class);

    /**
     * 声明一个包装响应的容器。
     * 有效值为“List”、“Set”或“Map”。任何其他值都将被忽略。
     */
    String responseContainer() default "";

    /**
     * Examples for the response.
     * @since 1.5.20
     * @return
     */
    Example examples() default @Example(value = @ExampleProperty(value = "", mediaType = ""));
}

常见的用法

代码语言:javascript
复制
    @ApiResponses({
            @ApiResponse(code = 200, message = "请求成功",response = 你响应的对象.class),
    })

特殊说明: 以上文章,均是我实际操作,写出来的笔记资料,不会盗用别人文章!烦请各位,请勿直接盗用!转载记得标注来源!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档