Swagger系列軟件介紹
Swagger-editor介紹
Swagger-editor主要是使用yaml語法來編寫API 文檔,編寫好的文檔可以生成json文件和yaml文件,用于Swagger-generator生成代碼,Swagger-UI在線文檔生成和測試

生成json和yaml文件示例.png
yaml語法比較簡單類似于markdown語法
Swagger-editor安裝方法
官方例子比較繁雜,介紹了各種安裝方式,看了半天才理清楚。
安裝方式一:
git clone https://github.com/swagger-api/swagger-editor.git
cd swagger-editor
npm install
npm start
不知道為啥npm install獲取數(shù)據(jù)一閃而過,懷疑是翻墻問題
安裝方式二:
先下載正式發(fā)布包下載地址,然后運行下面的命令
npm install -g http-server
http-server swagger-editor
運行http-server要到swagger-editor的上一級目錄才行,不然會報找不到icon的錯誤。
Swagger-generator介紹
Swagger-generator用于將Swagger-editor生成的json文件和yaml文件,按照指定的模板文件生成相應的代碼。
各種語言生成命令可以參考bin下面的腳本內(nèi)容,腳本里面有完整的命令格式。
安裝方式:
直接brew安裝,源碼還要下載java依賴,編譯較麻煩
brew install swagger-codegen
腳本內(nèi)容
#!/bin/sh
cd /Users/mac/Documents/MyWork/openSourceProject/swagger-codegen-master/mysource
swagger-codegen generate -t swift -i myyaml.yaml -l swift -o default
cd /Users/mac/Documents/MyWork/openSourceProject/swagger-codegen-master/mysource/default/SwaggerClient/Classes/Swaggers/Models
find * | xargs sed -i '' 's/Int32/Int/g'
find * | xargs sed -i '' 's/StringValue/stringValue/g'
find * | xargs sed -i '' 's/IntValue/intValue/g'
swagger-codegen generate -t swift -i myyaml.yaml -l swift -o default
- -t swift 表示模板文件夾,原始位置在modules/swagger-codegen/src/main/resources/swift,我是單獨拷貝出來
- -i myyaml.yaml 表示的輸入的yaml或者json文件
- -l swift 表示語言是swift
- -o default 表示輸出文件夾
最后三行命令是因為有些替代感覺模板無法完成,使用了腳本來替代 - find * 表示查找當前文件夾所有文件,xargs是參數(shù)傳遞
- sed -i '' 's/Int32/Int/g' 查找Int32替換成Int , /g表示全部替換