Swagger系列軟體介紹
Swagger-editor介紹
Swagger-editor主要是使用yaml語法來編寫API 文件,編寫好的文件可以生成json檔案和yaml檔案,用於Swagger-generator生成程式碼,Swagger-UI線上文件生成和測試
yaml語法比較簡單類似於markdown語法Swagger-editor安裝方法
官方例子比較繁雜,介紹了各種安裝方式,看了半天才理清楚。 安裝方式一:
git clone https://github.com/swagger-api/swagger-editor.git
cd swagger-editor
npm install
npm start
複製程式碼
不知道為啥npm install獲取資料一閃而過,懷疑是翻牆問題 安裝方式二: 先下載正式釋出包下載地址,然後執行下面的命令
npm install -g http-server
http-server swagger-editor
複製程式碼
執行http-server要到swagger-editor的上一級目錄才行,不然會報找不到icon的錯誤。
Swagger-generator介紹
Swagger-generator用於將Swagger-editor生成的json檔案和yaml檔案,按照指定的模板檔案生成相應的程式碼。 各種語言生成命令可以參考bin下面的指令碼內容,指令碼里面有完整的命令格式。
安裝方式:
直接brew安裝,原始碼還要下載java依賴,編譯較麻煩
brew install swagger-codegen
複製程式碼
指令碼內容
#!/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是引數傳遞
- sed -i '' 's/Int32/Int/g' 查詢Int32替換成Int , /g表示全部替換