[swagger]如何查看Swagger

本文介绍如何使用Swagger UI更有效地查看API文档。通过下载并安装Chrome的SwaggerUIConsole插件,用户可以在浏览器中直接查看和测试RESTful API。文章提供了访问Swagger UI的路径,如http://server/api/swagger-ui.html和http://server/v2/api-docs,并解释了为什么/v2/api-docs返回的是JSON格式。

一般查看swagger有些路径:

http://server/api/swagger-ui.html

http://server/v2/api-docs

因为/v2/api-docs/打开都是json,那怎么更好查看呢?

可以下载chrome的Swagger UI Console插件.

在地址栏那里输入路径:

即可查看

<think> 我们正在讨论的是如何查看Swagger生成的API文档。根据引用内容,Swagger是一个接口文档生成工具,通过集成相关依赖和配置,可以生成并展示API文档。用户的问题是如何查看Swagger,即如何访问和使用Swagger UI界面。 步骤总结: 1. 确保项目已正确集成Swagger(添加依赖并配置)。 2. 启动项目后,通过浏览器访问Swagger UI的URL。 具体步骤如下: ### 🔧 步骤1:添加Swagger依赖 在Maven项目中,需要添加以下依赖(版本号根据实际情况选择): ```xml <!-- Swagger UI 用于展示API文档 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency> <!-- Swagger2 核心库 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency> ``` 或者使用Swagger3的starter(Springfox Boot Starter): ```xml <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-boot-starter</artifactId> <version>3.0.0</version> </dependency> ``` ### 步骤2:配置Swagger 创建一个配置类,使用`@EnableSwagger2`注解(对于Swagger2): ```java @Configuration @EnableSwagger2 // 开启Swagger2 public class SwaggerConfig { // 可以在这里自定义配置,例如API分组等 } ``` 对于Swagger3,可以使用`@EnableOpenApi`注解,或者使用starter后可能不需要额外的配置类(但可以自定义配置)。 ### 🚀 步骤3:启动项目并访问Swagger UI 1. 启动Spring Boot应用程序。 2. 打开浏览器,访问Swagger UI的默认URL: - Swagger2: `http://<host>:<port>/swagger-ui.html` - Swagger3: `http://<host>:<port>/swagger-ui/` 或 `http://<host>:<port>/swagger-ui/index.html` 注意: - `<host>` 是服务器地址,本地运行通常为`localhost` - `<port>` 是服务器端口,例如`8080` ### 🔒 注意事项:环境控制 根据引用[2]和引用[3],在生产环境可能需要关闭Swagger。可以通过配置控制Swagger的开启和关闭: 例如,在`application.yml`中: ```yaml springfox: documentation: enabled: false # 关闭Swagger文档生成 swagger-ui: enabled: false # 关闭Swagger UI ``` 或者根据环境变量动态控制(如引用[3]所述): ```java @Configuration @EnableSwagger2 public class SwaggerConfig { @Value("${spring.profiles.active}") private String profile; @Bean public Docket api() { // 设置只在dev和test环境下开启Swagger boolean enable = profile.equals("dev") || profile.equals("test"); return new Docket(DocumentationType.SWAGGER_2) .enable(enable) .select() .apis(RequestHandlerSelectors.any()) .paths(PathSelectors.any()) .build(); } } ``` ### 🌐 访问示例 假设项目运行在本地8080端口,则访问: ``` http://localhost:8080/swagger-ui.html (Swagger2) http://localhost:8080/swagger-ui/ (Swagger3) ``` 页面加载后,将展示所有已配置的API接口,可以展开查看每个接口的详细信息,并尝试请求。 ### ❓ 相关问题 1. 如何自定义Swagger文档的标题和描述? 2. 如何为Swagger添加授权认证(如JWT)? 3. Swagger3和Swagger2有什么区别? 4. 如何过滤某些接口不在Swagger中展示? > 引用说明: > [^1]: Swagger的基本使用方法和依赖配置 > [^2]: 生产环境关闭Swagger的方法 > [^3]: 根据环境变量动态控制Swagger的开启 </think> ### 查看Swagger接口文档的方法 以下是查看Swagger生成的API文档的完整步骤,结合引用内容整理[^1][^2][^3]: #### ✅ 核心访问步骤 1. **启动项目**: - 确保应用已启动且包含Swagger依赖(示例为Springfox 2.9.2): ```xml <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency> ``` 或使用Swagger3 Starter: ```xml <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-boot-starter</artifactId> </dependency> ``` 2. **访问Swagger UI**: - 在浏览器输入默认URL(根据版本选择): - **Swagger 2.x**:`http://<host>:<port>/swagger-ui.html` - **Swagger 3.x**:`http://<host>:<port>/swagger-ui/` 3. **基础示例**: - 本地开发环境(端口8080): ``` http://localhost:8080/swagger-ui.html ``` #### ⚠️ 环境配置要点 1. **环境限制**(引用[3]): ```yaml spring: profiles: active: dev # 仅dev/test环境可访问 ``` - 生产环境(pro)默认不可访问 2. **强制关闭方法**(引用[2]): ```yaml springfox: documentation: enabled: false # 总开关 auto-startup: false swagger-ui: enabled: false # UI界面开关 ``` #### 🔍 访问效果说明 - **成功访问**:显示API列表,包含: - 接口路径 - 请求方法 - 参数说明 - 响应模型 - **访问失败可能原因**: - 缺少Swagger依赖 - 当前环境被禁用(如生产环境) - URL路径错误 #### 配置验证示例(Java) ```java @Configuration @ConditionalOnExpression("'${spring.profiles.active}'=='dev'") // 仅dev环境生效 @EnableSwagger2 public class SwaggerConfig { @Bean public Docket api() { return new Docket(DocumentationType.SWAGGER_2) .select() .apis(RequestHandlerSelectors.any()) .paths(PathSelectors.any()) .build(); } } ``` ### ❓ 相关问题 1. 如何定制Swagger文档的标题和分组? 2. 如何在Swagger中添加JWT认证支持? 3. Swagger 2和Swagger 3的主要区别是什么? 4. 生产环境如何安全地查看API文档? 5. 如何过滤敏感接口不在Swagger中显示? > 引用说明: > [^1]: Swagger基本用法及依赖配置 > [^2]: 生产环境关闭Swagger的配置方法 > [^3]: 基于环境变量控制Swagger访问权限
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值