代碼生成工具(一)

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表示全部替換
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • swagger是一個統(tǒng)一前后端的好工具,可以使用它來規(guī)劃客戶端的API訪問規(guī)劃,可以用來規(guī)劃服務(wù)端接口的開發(fā)。這篇...
    徐磊x閱讀 6,926評論 4 20
  • 簡介 Swagger 是最流行的 API 開發(fā)工具,它遵循 OpenAPI Specification(OpenA...
    LittleJessy閱讀 32,296評論 0 15
  • 簡介 Swagger是什么?在解答這個問題之前,我們先來看看開發(fā)Restful API過程中會遇到什么問題。我們?nèi)?..
    geekpy閱讀 8,289評論 0 5
  • Swashbuckle.AspNetCore Swagger 使用Asp.net core 建立API.生成漂亮的...
    JacoChan閱讀 5,308評論 0 1
  • 0. 原碼、補碼、反碼 初學者只做了解即可 見 張子秋 的博客 無論正負數(shù),在內(nèi)存中存儲的都是補碼正數(shù):反碼 ==...
    _涼風_閱讀 345評論 0 0

友情鏈接更多精彩內(nèi)容