在Debian環境下使用Swagger(現稱為OpenAPI)進行API測試與驗證,可以按照以下步驟進行:
sudo apt update
sudo apt install openjdk-11-jdk
sudo apt install maven
java -version
mvn -version
使用Spring Initializr創建一個新的Spring Boot項目,選擇必要的依賴,例如springfox-boot-starter。
在pom.xml文件中添加Swagger依賴:
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
在application.yml或application.properties文件中配置Swagger:
springfox:
documentation:
swagger-ui:
enabled: true
使用以下命令啟動Spring Boot項目:
mvn spring-boot:run
項目啟動后,打開瀏覽器,訪問以下URL來查看Swagger生成的API文檔:
http://localhost:8080/swagger-ui/
在控制器類中使用Swagger注解來描述API接口:
import io.swagger.annotations.*;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("/api")
@Api(tags = "Sample API")
public class SampleController {
@GetMapping("/hello")
@ApiOperation(value = "Say hello", response = String.class)
public String sayHello() {
return "Hello, World!";
}
@PostMapping("/data")
@ApiOperation(value = "Send data", requestBody = @io.swagger.annotations.ApiRequestBody(content = @io.swagger.annotations.ApiContent(schema = @io.swagger.annotations.ApiSchema(implementation = String.class))), response = String.class)
public String sendData(@RequestBody String data) {
return "Received: " + data;
}
}
http://<your-application-url>/swagger-ui.html。sudo apt-get update
sudo apt-get install apt-transport-https curl
curl -sL https://dl.swagger.io/swagger-editor/releases/2.0.9/swagger-editor.tar.gz | tar xz -C /opts
sudo ln -s /opt/swagger-editor/swagger-editor.sh /usr/local/bin/swagger
File -> Import選項導入你的Swagger JSON文件或從http://<your-application-url>/v2/api-docs獲取API文檔。sudo apt-get update
sudo apt-get install apt-transport-https curl
curl -sL https://dl.swagger.io/swagger-codegen/releases/2.4.21/swagger-codegen-cli.tar.gz | tar xz -C /opts
sudo ln -s /opt/swagger-codegen-cli/bin/swagger /usr/local/bin/swagger
swagger generate client -i http://<your-application-url>/v2/api-docs -l java -o my-client
sudo apt-get update
sudo apt-get install postman
http://<your-application-url>/v2/api-docs獲取API文檔。在Swagger規范文件中定義數據模型和驗證規則:
swagger: '2.0'
info:
title: Sample API
description: A sample API to demonstrate Swagger data validation
version: '1.0.0'
paths:
/users:
post:
summary: Create a new user
consumes:
- application/json
produces:
- application/json
parameters:
- in: body
name: body
description: User object that needs to be added to the store
required: true
schema:
$ref: '#/definitions/User'
responses:
200:
description: An array of users
schema:
type: array
items:
$ref: '#/definitions/User'
definitions:
User:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
format: email
email:
type: string
format: email
required:
- name
- email
通過以上步驟,你可以在Debian環境下成功配置和使用Swagger來生成和管理API文檔,并進行API測試與驗證。