go-swagger的简单使用

摘要:
OperationPUT/api/v1/addr/update/{id}addrdel//---//summary:token//type:address-id//type:中的参数名称:查询为http:typerequired://petstore.swagger.io执行6。参考网址:

一、下载go-swagger

go-swagger 官方下载
根据不同个的操作系统选择对应的
go-swagger的简单使用第1张

二、添加环境变量

2.1 window

swagger_windows_amd64.exe
将swagger_windows_amd64.exe  重命名 成 swagger.exe
然后将该软件放到$GOROOT/bin 中

2.2 linux

swagger_linux_amd64
重命名成 swagger
然后 将 软件放入$GOROOT/bin 目录下
mv swagger $GOROOT/bin/

三、关于swagger-UI 的页面

如果你想要 petstore.swagger.io 的那种页面 ,你可以自己下载 https://github.com/swagger-api/swagger-ui ,

下载好后进入dist 页面执行运行index.html 即可

四、go-swagger 规范

// swagger:operation PUT /api/v1/addr/update/{id} addr del
// ---
// summary: 修改用户地址
// description: 修改指定用户的addr
// parameters:
// - name: token
//   in: header
//   description: token
//   type: string
//   required: true
// - name: id
//   in: path
//   description: 地址id  
//   type: string
//   required: true
// - name: addr
//   in: body
//   description: addr
//   type: string
//   required: true
// responses:
//   200: repoResp
//   400: badReq
你可以将上面的规范放在go源码中每个controller 函数 前面
解释
// swagger:operaion [请求方式(可以是GETPUTDELETEPOSTPATCH)] [url:请求地址] [tag] [operation id]  (同一标签的属于同一类,)
// --- 这个部分下面是YAML格式的swagger规范.确保您的缩进是一致的和正确的
// summary: 标题
// description: 描述
// parametres:   下面是参数了
// - name: 参数名
    in: [header|body|query|path] 参数的位置 header和body 之http的header和body 位置。 query 是http://url?query  path 就是url 里面的替换信息
    description: 描述
    type: 类型
    required: 是否必须
// responses: 响应
// 200:
// 404:

五 、go-swagger 使用

  • 进入自己项目的根目录
    swagger 会自己寻找main 包的
  • 执行命令
swagger generate spec -o ./swagger.json    // 根据swagger规范 创建 swagger.json 规范文档
swagger serve -F=swagger swagger.json     // 启动一个http 服务同时将json文档放入http://petstore.swagger.io 执行

六、refer

https://goswagger.io/

免责声明:文章转载自《go-swagger的简单使用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇MyBatis一个Mapper方法里写多个SQL测试用例--用户登录下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

iphone(ios)不同设备的内存和游戏不闪退峰值

ios内存限制 不同内存的苹果机型上(1G,2G,3G,4G…),游戏内存的峰值一般最高多少能保证不闪退? 一般来讲最保险的就是不超过机器总内存的50%,具体每个机型的内存限制在列出在下面。 原贴:《ios app maximum memory budget》 注意事项:查看当前app占用多少内存,通过OS的API来获取,而不要通过引擎自己的API来获取。...

css之 斜线

方案一 .x { border: solid 1px red; width: 100px; height: 100px; position: relative; background-color: transparent;...

Android使用GoogleMap v2(一)

使用之前的一些准备: https://developers.google.com/maps/documentation/android/start#get_an_android_certificate_and_the_google_maps_api_key (官网的详细教程) Creating a new Android application that...

Jmeter系列(27)- 详解正则提取器

如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html   有了 JSON 提取器为啥还要用正则提取器? JSON 提取器只针对接口返回的响应内容 如果想提取的是响应头、请求头的值,而非响应内容的值呢? 这个时候正则提取器的作用就出来了,它可以提取请...

iis无法启动, 找出占用80端口的罪魁祸首

有时候大家会碰到 "iis 无法启动,发生意外错误0x8ffe2740" 的错误 ,其实这个一般是其他进程占用了80端口导致 iis 启动失败, helix oracle skype wms 都有可能占用 iis 的80端口. 有时候防火墙规则也会对iis产生影响 http://hi.baidu.com/yygyd/blog/item/78d59212b2...

ElasticSearch安装拼音插件(pinyin)

环境介绍 集群环境如下: Ubuntu14.04 ElasticSearch 2.3.1(3节点) JDK1.8.0_60 开发环境: Windows10 JDK 1.8.0_66 Maven 3.3.3 Intellij IDEA 2016.1 下载编译Pinyin clone elasticsearch-analysis-pinyin 通过...