如何生成swagger.json
我正在使用Java Spring Boot框架为我的项目创建REST api,并且正在使用“ springfox-swagger2和springfox-
swagger-ui”生成摇摇欲坠的文档。我可以使用URL http:// localhost:8080 / swagger-
ui.html查看我的文档。
,文档不应该包含在此应用程序中,我们使用单独的应用程序列出了API文档。
回答:
我已经做了一个小技巧
我在家庭控制器测试用例的末尾添加了以下代码
import org.springframework.boot.test.web.client.TestRestTemplate;public class HomeControllerTest extends .... ...... {
@Autowired
private TestRestTemplate restTemplate;
@Test
public void testHome() throws Exception {
//.......
//... my home controller test code
//.....
String swagger = this.restTemplate.getForObject("/v2/api-docs", String.class);
this.writeFile("spec.json", swagger );
}
public void writeFile(String fileName, String content) {
File theDir = new File("swagger");
if (!theDir.exists()) {
try{
theDir.mkdir();
}
catch(SecurityException se){ }
}
BufferedWriter bw = null;
FileWriter fw = null;
try {
fw = new FileWriter("swagger/"+fileName);
bw = new BufferedWriter(fw);
bw.write(content);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (bw != null)
bw.close();
if (fw != null)
fw.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
}
我不知道这是不是正确的方法,但是它正在工作:)
相依性
<dependency> <groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.4.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.6.1</version>
</dependency>
以上是 如何生成swagger.json 的全部内容, 来源链接: utcz.com/qa/436334.html