iT邦幫忙

0

以某工具做的YAML檔,但Postman或Swagger都說語法不合

  • 分享至 

  • xImage

這種有解嗎?

YAML檔的第一行為
apiVersion: apps/v1

這到底是哪種WebAPI的格式啊?
為什麼Postman或Swagger都說語法不合?
有沒有工具可以轉換成可以用的YAML檔呢?

然後翻到這篇
https://ithelp.ithome.com.tw/articles/10224338
可是在Windows 10下使用
kubectl api-versions
卻是空的?什麼也沒有?

wushung iT邦新手 5 級 ‧ 2023-04-21 20:08:55 檢舉
會不會是RAML,有更多資訊嗎?
player iT邦大師 1 級 ‧ 2023-05-02 15:09:55 檢舉
結案
在查閱與對照OpenAPI相關範例與SPEC之後
發現我把 swagger2 與 swagger3 的寫法搞混了
補上必要的code之後
用 http://127.0.0.1:7104/demo-api/swagger-ui/
得到資料來源在
/demo-api/v3/api-docs
將輸出WebAPI的宣告的json 內容
再拿到 swagger editor 去轉換
最後得到我要的WebAPI definition 的 YAML檔了
orz
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
Ray
iT邦大神 1 級 ‧ 2023-04-18 15:17:08
最佳解答

你為什麼會把 k8s 的 config yaml 當作 API definition 拿去餵給 Postman/Swagger 呢?

看更多先前的回應...收起先前的回應...
player iT邦大師 1 級 ‧ 2023-04-18 16:25:33 檢舉

那 k8s 的 config yaml,有辦法轉換成Postman/Swagger 用的YAML檔嗎?
現在先努力看code,重寫Postman/Swagger 用的YAML檔中

Ray iT邦大神 1 級 ‧ 2023-04-18 16:31:47 檢舉

一個是 config, 一個是 API definition, 兩者風馬牛不相及, 要怎麼轉?
你能把國語課本的內容, 轉成化學課本, 這樣就可以拿去教化學嗎?

不如先說說你想幹甚麼? 為何要做這件事情? 要解決甚麼問題?
說不定你想錯方向了....

player iT邦大師 1 級 ‧ 2023-04-18 16:39:58 檢舉

有WebAPI的Code,要做測試驗證可行性
可是測試工具需要WebAPI定義用的YAML
偏偏Code在編譯後,只有產出Spring Boot應用程式的Jar檔
沒有看到其他的yaml檔?

Ray iT邦大神 1 級 ‧ 2023-04-18 16:46:19 檢舉

你這要請當初寫 Code 的人來寫啊, 他沒留下定義檔, 誰會知道內容呢?

player iT邦大師 1 級 ‧ 2023-04-18 16:59:52 檢舉

東西交過來
轉交的人說
那邊都測試OK說可以跑
可是要我再測一次
我提過向對方要yaml檔
結果來的是code, 與你說的config的yaml檔
如果code裡的Annotation 寫得很完整就算了
偏偏感覺上還有缺的地方
變成WebAPI定義用的yaml檔好難寫
orz
試著用google找spring boot app make yaml of webapi definition
也沒找到

Ray iT邦大神 1 級 ‧ 2023-04-18 18:47:27 檢舉

你只說: 要 Yaml 檔?

這樣可能會有溝通上的誤會唷, 要是我只聽到說要 YAML, 第一個反應也是會給你 k8s 的 deployment.yaml, 因為不知道你後續想幹嘛, 只能讓你先把系統部署下去, 所以是給你 config 檔案.

你要明確說是: Postman或Swagger 的 API Doc, 而且對方不一定會提供 YAML, 也有可能是 JSON 檔案. 理論上, 開發團隊應該是給測試團隊 API Doc, 讓你自己寫 Postman或Swagger.

因為開發做測試的方式, 不見得要用到 Postman或Swagger, 如果它們不是這樣測, 當然就沒辦法直接給你檔案.

還有一個本位主義的問題, 開發即便有寫, 它們可能也會覺得: 這是我們自己寫的, 你們要測試, 你就自己讀完 API Doc 去寫; 我們不會給你我們寫好的.

我要發表回答

立即登入回答