swagger使用详解

swagger简介

Swagger™的目标是为REST APIs 定义一个标准的,与语言无关的接口,使人和计算机在看不到源码或者看不到文档或者不能通过网络流量检测的情况下能发现和理解各种服务的功能。当服务通过Swagger定义,消费者就能与远程的服务互动通过少量的实现逻辑。类似于低级编程接口,Swagger去掉了调用服务时的很多猜测。

swagger的优势

Swagger能成为最受欢迎的REST APIs文档生成工具之一,有以下几个原因:

Swagger 可以生成一个具有互动性的API控制台,开发者可以用来快速学习和尝试API。
Swagger 可以生成服务端代码和客户端SDK代码用于各种不同的平台上的实现。
Swagger 文件可以在许多不同的平台上从代码注释中自动生成。
Swagger 有一个强大的社区,里面有许多强悍的贡献者。
Swagger编写语言统一、风格统一、可读性高
Swagger根据查看到的接口,我们不仅能看到接口的链接串、参数、返回值等各种信息,我们还可以真实的对服务器进行请求,查看真实的交互,大大减少了同事之间的交互成本

部署自己的swagger API

1、从git上clone:git clone https://github.com/swagger-api/swagger-ui.git;
2、修改访问.html url地址为相对路径(保证能访问到json配置文件);
3、修改.json文件;
4、浏览器调试程序,swagger接口地址+‘/’+对应html文件

json文件各参数祥解

1、swagger:swagger的版本号;
2、info:接口相关信息。具体:title 接口标题;version:接口版本;termsOfService:服务地址;description:描述;contact:接口提供者联系方式
3、host:接口host地址;
4、base:接口路径地址;
5、可以使用tags设置多个标签的属性:name为唯一标识名称,对应让接口属于哪个tags标签设置对应的tags属性为该名称即可;description:为该标签的描述;
6、schemes:使用哪种请求协议;
7、paths:具体接口列表。首先,接口地址;其次,数据提交方式(post、get、put、delete等)第三,tags 对应属于哪个标签;summary:接口名称;description:接口描述;
author:作者;operationId操作id:唯一标识;parameters请求参数列表:name,参数名;in:参数类型(path、query、body、header、formData),description:参数描述,required:是否必须,type:数据类型(string,number,integer,boolean,array,object),defalut:默认值.
responses:返回信息

针对跨域

1、swagger使用 CORS(跨源资源共享)来解决跨域问题,这样的话,就只需改动服务器端代码,而无需改动客户端代码,而且 CORS 支持各种请求类型。
2、在服务端添加跨域响应头部:Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS
Access-Control-Allow-Headers: Content-Type, Key, Authorization

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Swagger是一种API文档生成工具,它可以根据代码自动生成API文档,并且可以通过Swagger UI进行查看和测试。Swagger注解是用来描述API信息的一种方式,它可以帮助Swagger生成准确的API文档。 下面是Swagger注解的使用详解: 1. @Api:用于描述API的基本信息,包括API的名称、描述、版本号等。 2. @ApiOperation:用于描述API的操作,包括HTTP请求方法、请求路径、请求参数、返回值等。 3. @ApiParam:用于描述API的参数信息,包括参数名称、参数类型、是否必须、默认值等。 4. @ApiModel:用于描述API的数据模型,包括模型名称、模型属性等。 5. @ApiModelProperty:用于描述API的数据模型属性,包括属性名称、属性类型、是否必须、默认值等。 6. @ApiIgnore:用于忽略API的某些信息,比如某个参数或返回值。 7. @ApiResponses:用于描述API的响应信息,包括响应状态码、响应描述、响应数据类型等。 8. @ApiResponse:用于描述API的单个响应信息,包括响应状态码、响应描述、响应数据类型等。 9. @ApiError:用于描述API的错误信息,包括错误码、错误描述、错误数据类型等。 10. @ApiImplicitParam:用于描述API的隐式参数,比如请求头、请求体等。 11. @ApiImplicitParams:用于描述API的多个隐式参数。 总之,Swagger注解提供了丰富的API描述功能,可以帮助我们更好地生成准确的API文档,提高API的可读性和可维护性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值