Zenn
Open8

Apidog を触ってみる

つきみつきみ

Apidogさわり始めました。いろんな機能があってニコニコしながら漁っています。

Apidog の設計部分については腐るほど文献があるので、ここでは取り扱いません。
基本的に他の記事に書かれている内容通りに進めれば、問題無いと思います。(あと公式ドキュメント)

試行錯誤しながらなので、少し認識が違うかもです。
正確な情報が必要なときは公式ドキュメントをぜひ。

つきみつきみ

TypeScript の型を取りたい

Apidog には設計した API を OpenAPI Generator なりで生成する方法があるが、
正直なところ、毎回毎回生成して保存してを繰り返していたら、マウスを持つ手が何個あっても足りないためどうにかしたい。

https://docs.apidog.com/generate-code-541770m0#code-generation-for-api-documentations

つきみつきみ

上のリンクで貼っていた「サーバースタブとクライアントSDKを生成」にて

説明:URLを使用することができます OpenAPI Generator Cli カスタムニーズを実現するためにコードを生成します。

との記述

上の OpenAPI URL である http://127.0.0.1:3658/export/openapi/4?version=openapi30 をクリックしたら、確かになんかいい感じの OpenAPI Specification が JSON 形式で出力されていた。
これかな?

/export/openapi/44 だけが謎ではある。何の値なんだ?

つきみつきみ

画面を変えて、 Apidog > Project > Setting > Export Data に行って見る。

Apidog のプロジェクトの管理画面の一つである Export Data ページの画像

Export all を設定したうえで、Open URLを押すと、先ほどまで 4 だったのが、どんどんと連番で上がっているように見える。

試しに File Format を yaml にしてみると、7 で出力された。
その前の json である 6 と、出力内容が変わっていることから考えるに、
何かしらの設定を記録されていて、それが連番と紐づいていることが分かった。

そんなところで、TypeScript にどう組み込んでいくか考えていきたい。

つきみつきみ

WSL から Windows へのアクセスはそう簡単に行けないことに気づいたので死んでる。
どうアプローチすべきなのだろうか?

つきみつきみ

ip route で出てきた Windows の IP を適当に突っ込んだら
pnpm openapi-typescript http://[HOST_IP]:3658/export/openapi/4?version=openapi30 -o ./types.d.ts で動いた。

後はお好みに応じて良しなに types.d.ts を認識させてあげる。

ログインするとコメントできます