在CentOS上安装和调试Swagger(现称为OpenAPI)主要涉及Java运行环境(JRE或JDK)的安装、Maven的配置、Swagger Core和Swagger UI的构建与部署。以下是详细的步骤和技巧:
Swagger需要Java运行环境(JRE)或Java开发工具包(JDK)。你可以通过以下命令安装OpenJDK:
sudo apt update
sudo apt install openjdk-11-jdk
验证安装:
java -version
Swagger使用Maven进行构建和依赖管理。你可以通过以下命令安装Maven:
sudo apt install maven
验证安装:
mvn -version
你可以从Swagger的官方GitHub仓库克隆Swagger Core和Swagger UI项目:
git clone https://github.com/swagger-api/swagger-core.git
cd swagger-core
mvn clean install
git clone https://github.com/swagger-api/swagger-ui.git
cd swagger-ui
mvn clean install
构建Swagger UI:
cd swagger-ui
mvn clean install
部署Swagger UI:
将构建好的Swagger UI文件复制到你的Web服务器目录中,例如 /var/www/html
。你可以使用以下命令将文件复制到该目录:
sudo cp -r target/swagger-ui-dist/* /var/www/html/
配置Web服务器:
如果你使用的是Apache:
创建一个虚拟主机配置文件,例如 /etc/apache2/sites-available/swagger.conf
:
<VirtualHost *:80>
ServerName localhost
DocumentRoot /var/www/html
<Directory /var/www/html>
Options Indexes FollowSymLinks AllowOverride All Require all granted
</Directory>
</VirtualHost>
然后启用该虚拟主机:
sudo a2ensite swagger.conf
sudo systemctl reload apache2
如果你使用的是Nginx:
创建一个服务器块配置文件,例如 /etc/nginx/sites-available/swagger
:
server {
listen 80;
server_name localhost;
root /var/www/html;
index index.html;
location / {
try_files $uri $uri/ /index.html;
}
}
然后启用该服务器块:
sudo ln -s /etc/nginx/sites-available/swagger /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
访问Swagger UI:
打开浏览器,访问 http://localhost
,你应该能够看到Swagger UI的欢迎页面。
接口版本控制:使用[ApiVersion]
特性区分不同版本的API响应。
添加返回示例:通过[SwaggerResponse]
添加返回示例。
请求示例:用[SwaggerRequestExample]
展示请求参数示例。
中文乱码:设置XML文档编码:
services.AddSwaggerGen(c => {
c.SwaggerDoc("v1", new OpenApiInfo { Title = "我的API", Version = "v1" });
// 设置xml文档编码
c.DocumentFilter<SwaggerDocumentFilter>();
});
隐藏某些接口:使用[ApiExplorerSettings(IgnoreApi = true)]
。
通过以上步骤和技巧,你可以在CentOS上成功安装和调试Swagger,从而为你的API生成详细的文档并进行在线测试。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>