もともとAPIクライアントとしてPostmanを使っていたのですが、設定ファイルをGithubで設定ファイルを共有出来て、envファイルで環境変数を管理できるのでBrunoに乗り換えました。
BrunoはオープンソースのAPIクライアントで、リクエスト等の設定ファイルをGithubで管理できるので複数人数で共有するときに非常に便利なツールです。
ちゃんと調べてないですが結構色んなことが出来そうです(適当)
使用感もPostmanとほとんど変わらないので割とすんなり移行出来ました。
BrunoのAuth機能では各リクエストの前に実行はしてくれない
PostmanではAuthorization機能を利用して、各リクエストの前にOAuthの認証を通すことが出来ます。
BrunoはAuth機能こそあるものの、各リクエストの前に実行してもらうということが(2024/06/06時点だと)出来ないみたいです。(間違ってたらすいません)
Scriptを書いて無理やりヘッダーにTokenを付与する
BrunoのCollectionのSettingを開くと、Collectionで共通する設定ができるようです。
今回はそれを利用してCollection内のすべてのリクエストの前に共通の処理をすることにします。
Brunoのissueで道を切り開いている人がいたので参考にしてみました。
Bruno - Scriptmania 👩💻🧑💻 · usebruno/bruno · Discussion #385A place to showcase your scripting superpowers ⚡ Bruno offers scripting support to help you to add additional functionality to the tool such as data generation, validation and integration with othe...github.com
これをScriptに書いてあげれば、各リクエストの前にAuthorizationヘッダーを付与してくれます。
おわりに
今回はBrunoで各リクエストの前にCognitoの認証を通す方法を書きました。
Brunoはenvファイルを使って環境変数を管理出来たり、 package.json
でパッケージを管理してScriptで使えたりと、かなりプログラマブルなAPIクライアントです。
個人的にはGithubでファイルが管理できるので個人・仕事関係なく活用しやすいと思ってます。
Bruno自体もまだまだ活発に開発が行われているみたいなので今後に期待しています。
いつかコントリビュートしてみようかな。
ではまた。
Takuto Mori@_mooriii
Wevoxというサービスのフロントエンジニアをしています。趣味は猫を眺めることです🐱