API接口文档利器:Swagger 和 接口调试利器:Postman

这篇具有很好参考价值的文章主要介绍了API接口文档利器:Swagger 和 接口调试利器:Postman。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

2.接口相关工具

2.1API接口文档利器:Swagger

2.1.1Swagger介绍

Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务

(https://swagger.io/)。 它的主要作用是:

  1. 使得前后端分离开发更加方便,有利于团队协作

  2. 接口的文档在线自动生成,降低后端开发人员编写接口文档的负担

  3. 功能测试

Spring已经将Swagger纳入自身的标准,建立了Spring-swagger项目,现在叫Springfox。通过在项目中引入Springfox ,即可非常简单快捷的使用Swagger。

2.1.2SpringBoot集成Swagger

  1. 在huiminpay-common项目中添加依赖,只需要在huiminpay-common中进行配置即可,因为其他微服务工程都直接或间接依赖huiminpay-common。

    <!-- Swagger依赖 -->
    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger2</artifactId>
    </dependency>
    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger-ui</artifactId>
    </dependency>
    
  2. 在huiminpay-merchant-application工程的config包中添加一个Swagger配置类

package com.huiminpay.merchant.config;

import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration
//此注解控制配置类是否生效,意思是当配置文件中prefix.value的值==havingValue的值则生效,否则无效
@ConditionalOnProperty(prefix = "swagger",value = {"enable"},havingValue = "true")
@EnableSwagger2
public class SwaggerConfiguration {
    @Bean
    public Docket buildDocket() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(buildApiInfo())
                .select()
                // 要扫描的API(Controller)基础包,注意要修改成自己项目的包路径
                .apis(RequestHandlerSelectors.basePackage("com.huiminpay.merchant.controller"))
            	//过滤什么请求
                .paths(PathSelectors.any())
                .build();
    }

    /**
     * 构建API基本信息
     */
    private ApiInfo buildApiInfo() {
        //联系信息
        Contact contact = new Contact("开发者", "", "");
        return new ApiInfoBuilder()
                .title("惠民支付-商户应用API文档")
                .description("")
                .contact(contact)
                .version("1.0.0").build();
    }
}
  1. 添加SpringMVC配置类:WebMvcConfig,让外部可直接访问Swagger文档
package com.huiminpay.merchant.config;

import org.springframework.stereotype.Component;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * @author Administrator
 * @version 1.0
 **/
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
    /**
     * 添加静态资源文件,外部可以直接访问地址
     * @param registry
     */
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");
        registry.addResourceHandler("swagger-ui.html")
                .addResourceLocations("classpath:/META-INF/resources/");
        registry.addResourceHandler("/webjars/**")
                .addResourceLocations("classpath:/META-INF/resources/webjars/");//解决swagger2中js无法访问
    }
}

2.1.3Swagger常用注解

在Java类中添加Swagger的注解即可生成Swagger接口文档,常用Swagger注解如下:

@Api:修饰整个类,描述Controller的作用

@ApiOperation:描述一个类的一个方法,或者说一个接口

@ApiParam:单个参数的描述信息

@ApiModel:用对象来接收参数

@ApiModelProperty:用对象接收参数时,描述对象的一个字段

@ApiResponse:HTTP响应其中1个描述

@ApiResponses:HTTP响应整体描述

@ApiIgnore:使用该注解忽略这个API

@ApiError :发生错误返回的信息

@ApiImplicitParam:一个请求参数

@ApiImplicitParams:多个请求参数的描述信息

@ApiImplicitParam属性:

属性 取值 作用
paramType 查询参数类型
path 以地址的形式提交数据
query 直接跟参数完成自动映射赋值
body 以流的形式提交 仅支持POST
header 参数在request headers 里边提交
form 以form表单的形式提交 仅支持POST
dataType 参数的数据类型 。只作为标志说明,并没有实际验证
Long
String
name 接收参数名
value 接收参数的意义描述
required 参数是否必填
true 必填
false 非必填
defaultValue 默认值

上边的属性后边编写程序时用到哪个我再详细讲解,下边写一个swagger的简单例子,我们在MerchantController 中添加Swagger注解,代码如下所示:

API接口文档利器:Swagger 和 接口调试利器:Postman,惠民支付项目,postman,spring boot,测试工具,swagger

    @ApiOperation("测试")
    @GetMapping("/hello/{name}")
    public String hello(@PathVariable("name") String name) {
        return "hello," + name;
    }

    @ApiOperation("测试")
    @PostMapping("/hi/{name}")
    public String hi(@PathVariable("name") String name) {
        return "hi," + name;
    }

2.1.4Swagger测试

  1. 启动商户应用和商户中心服务,访问:http://localhost:57010/merchant/swagger-ui.html

  2. 点击其中任意一项即可打开接口详情,如下图所示:

  3. 点击“Try it out”开始测试,并录入参数信息,然后点击“Execute"发送请求,执行测试返回结果:“hi,李四”

API接口文档利器:Swagger 和 接口调试利器:Postman,惠民支付项目,postman,spring boot,测试工具,swagger

API接口文档利器:Swagger 和 接口调试利器:Postman,惠民支付项目,postman,spring boot,测试工具,swagger
API接口文档利器:Swagger 和 接口调试利器:Postman,惠民支付项目,postman,spring boot,测试工具,swagger

Swagger生成API文档的工作原理:

1、huiminpay-merchant-application启动时会扫描到SwaggerConfiguration类

2、在此类中指定了扫描包路径com.huiminpay.merchant.controller,会找到在此包下及子包下标记有

@RestController注解的controller类

3、根据controller类中的Swagger注解生成API文档

**注意:**如果第2步扫描包路径有误则会出现swagger页面正常显示,但是没有接口信息的情况。

2.2 接口调试利器Postman

Postman是一款功能强大的http接口测试工具,使用Postman可以完成http各种请求的功能测试。作为服务器端开发人员,当一个业务功能开发完毕后,应该用Postman进行功能测试。

1、请自行在本机安装Postman

2、新建集合(建议一个微服务新建一个对应的集合):惠民支付-商户应用

API接口文档利器:Swagger 和 接口调试利器:Postman,惠民支付项目,postman,spring boot,测试工具,swagger

3、在惠民支付-商户应用集合中新建请求Add Request,并录入请求信息

API接口文档利器:Swagger 和 接口调试利器:Postman,惠民支付项目,postman,spring boot,测试工具,swagger

填写新建商户接口地址和请求类型后,点击Send发送请求:
API接口文档利器:Swagger 和 接口调试利器:Postman,惠民支付项目,postman,spring boot,测试工具,swagger

小技巧:每个测试都可以进行保存(Ctrl+S),以便于后续使用。文章来源地址https://www.toymoban.com/news/detail-668166.html

到了这里,关于API接口文档利器:Swagger 和 接口调试利器:Postman的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 从0到1手把手教你ASP.NET Core Web API项目配置接口文档Swagger(二)

    传送门:从0到1手把手教你ASP.NET Core Web API项目配置接口文档Swagger(一) 我们虽然可以在输入 /swagger 后顺利的访问 Swagger UI 页面,但是我们发现每次运行项目都会默认访问 /weatherforecast 这个接口,想要将启动页设为 /swagger (或者其他页面)就需要用到配置文件 launchSettings.

    2023年04月12日
    浏览(34)
  • 从0到1手把手教你ASP.NET Core Web API项目配置接口文档Swagger(一)

    1、双击打开VS2022。 2、单击“创建新项目”,如下图。 3、选择“ASP.NET Core Web API”类型,然后单击“下一步”,如下图。 4、“项目名称”此处填写为“AllTestDemo”;“位置”此处放在E盘根目录;“解决方案名称”此处默认与“项目名称”保持一致;不勾选“将解决方案和项

    2023年04月11日
    浏览(49)
  • Spring Boot入门(16):Spring Boot 整合 Swagger-UI 实现在线API接口文档 | 超级详细,建议收藏

            在现代化的软件开发中,API接口文档的编写和管理是非常重要的一环。而Swagger-UI作为一款优秀的API文档生成工具,可以帮助开发者轻松地生成并管理API接口文档,提高开发效率和代码质量。在本文中,我们将介绍如何使用Spring Boot框架和Swagger-UI工具实现在线API接

    2024年02月16日
    浏览(38)
  • 简单步骤:在 Postman 中导入 Swagger 文档

    在现代软件开发中, Swagger 和 Postman 作为 API 设计、开发和测试的利器,都被广泛应用。可以将 Swagger 定义的 API 导入到 Postman 中,充分利用 Postman 强大的测试特性对接口进行深入测试。 以  Swagger Petstore  项目为例,下面我将引导你如何轻松将 Swagger 中的 API 集成到 Postman,加

    2024年04月10日
    浏览(27)
  • Java技术-接口文档-Swagger2&Swagger3&接口文档UI整合

    目录 一、Swagger2完整用法 1.POM依赖 2.接口类 3.实现类 4.托管静态资源 5.接口文档配置 6.生产环境关闭接口文档 7.Swagger3页面效果 二、Swagger3完整用法 三、Swagger整合Knife4jUi 1.POM依赖 2.接口类 3.实现类 4.托管静态资源 5.接口文档配置 6.生产环境关闭接口文档 四、注释和参数讲解

    2024年02月16日
    浏览(32)
  • kubernetes REST Api详解(导入Swagger至Postman)

    备注:本文统一成kubernetes为k8s。 首先贴上k8s的架构图: 平时我们一般都会使用 CLI (通常使用 kubectl 命令)去操作 k8s ,但是作为开发者,更为倾向的是使用 REST Api 来操作 k8s ,其实 k8s 是支持的,那么如何查看这些 API 呢? 本文主要讲解的是 把k8s的swagger.json文件导出,然后

    2024年02月05日
    浏览(24)
  • 怎样找到swagger接口文档

    如果你的 API 在运行中,你可以在浏览器中访问 http://[your-api-domain]/swagger 来查看 Swagger 接口文档。 例如,如果你的 API 的域名是 api.example.com ,你可以在浏览器中访问 http://api.example.com/swagger 来查看 Swagger 接口文档。 如果你的 API 是本地运行的,你可以在浏览器中访问 http://

    2024年02月16日
    浏览(23)
  • Swagger接口文档的导出使用

    1.配置项目swagger2 帮助网站:https://blog.csdn.net/xhmico/article/details/125353535 配置完成后,运行项目,打开 http://localhost:8868/mike/swagger-ui.html# (注意端口) ,如下: 点击红圈链接,会生成 json 格式的接口文档,如下图: 2.生成文档 点击下方链接: 在线swagger转word文档|swagger导出w

    2024年02月09日
    浏览(27)
  • gin中使用swagger生成接口文档

    想要使用 gin-swagger 为你的代码自动生成接口文档,一般需要下面三个步骤: 按照swagger要求给接口代码添加声明式注释,具体参照声明式注释格式。 使用swag工具扫描代码自动生成API接口文档数据 使用gin-swagger渲染在线接口文档页面 第一步:添加注释 在程序入口main函数上以

    2024年01月25日
    浏览(26)
  • SpringBoot使用Swagger2生成接口文档

            通过一下配置,将Swagger2自动配置进SpringBoot中             通过@Api注解和@ApiOperation注解说明模块作用及接口说明。         通过访问路径http://localhost:8088/doc.html,说明一下8088是我SpringBoot的端口号,你们填你们自己的,不同版本的Swagger访问的路径是不一样的。

    2024年01月25日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包