如何在当地提供go-swagger?

我有一个yaml格式和json的swagger文件。我可以在swaggers在线查看器 https://editor.swagger.io/ 查看yaml文件,但是当我尝试在本地提供文件时,我收到错误:

webbrowser: tried to open "http://localhost:40335/docs", no screen found

使用命令后:

swagger serve -F=swagger swagger.yaml

若要重新创建此方案,可以克隆此存储库:https://github.com/go-swagger/go-swagger/tree/master/fixtures/goparsing/petstore

然后运行以下命令 (MAC-OS) 以生成 yaml 文件:

注意:您可能需要使用 sudo -s 在项目的根目录中运行这些命令

有关 Windows 安装的说明,请点击此处 https://goswagger.io/install.html

下载 go-swagger

  1. docker pull quay.io/goswagger/swagger

  2. alias swagger="docker run --rm -it  --user $(id -u):$(id -g) -e GOPATH=$HOME/go:/go -v $HOME:$HOME -w $(pwd) quay.io/goswagger/swagger"

  3. swagger version以验证安装

生成炫耀的 Yaml 4.swagger generate spec -o ./swagger.yaml --scan-models

现在应该生成 swagger 文件,但由于某种原因使用该命令会给出上述错误。swagger serve -F=swagger swagger.yaml


大话西游666
浏览 161回答 1
1回答

江户川乱折腾

由于您在 docker 容器中运行它,并且其中没有浏览器,因此您会收到错误。no screen found可以通过将选项传递给 来解决此问题。此外,通过传递该选项来指定固定端口。--no-openswagger serve ...--port资料来源:https://goswagger.io/usage/serve_ui.html
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go