我有一个为特定端口提供服务的应用程序(gorilla/mux)。我也有一个 json 文件形式的 swagger API 规范。是否有任何 go API 可以像 spring boot 一样从 JSON 文件生成 swagger UI 定义。 我正在看https://github.com/go-swagger/go-swagger ,但我无法在我的 go-lang 代码中使用它。看来这个 API 只能从命令行使用。
最佳答案
如果您已经以 YAML 或 JSON 格式定义了 API,则可以使用静态“dist”树从浏览器中呈现它:
https://github.com/swagger-api/swagger-ui/tree/master/dist
更新 index.html
以通过此标记指向您的 API 文档:
url: "https://petstore.swagger.io/v2/swagger.json",
如果您想从 Go REST-API 服务器提供此静态树,请添加以下处理程序:
fs := http.FileServer(http.Dir("dist"))
http.Handle("/swagger/", http.StripPrefix("/swagger/", fs))
这将为 /swagger/
路线提供 swaggers 文档 - 从 dist
目录读取内容。
关于Go API 在 html 中显示 swagger api 规范 (json) (Swagger UI),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55550174/