Help us understand the problem. What is going on with this article?

CURL の代わりに IntelliJ でカンタン API の動作確認【JetBrains IDE】

はじめに

この記事は ちょっとした工夫で効率化!パソナテック Advent Calendar 2020 の9日目の記事です。

昨日は @ta1fukumoto さんの記事でした: 【Macユーザー必見】BetterTouchToolで極限まで作業効率をあげよう!!

API の動作確認

皆さん API の動作確認ってどうしてますか?

シンプルな GET API だとブラウザで確認できますが、リクエストヘッダが必要だったり、POST メソッドだったりすると、ブラウザでは動作確認しづらいです。

かといって curl コマンドを書くのは結構大変。

Postman なんていうツールもあります。curl を GUI で叩けるツールです。

しかし、 IntelliJ も HTTP リクエストできることを知り、最終的に IntelliJ に落ち着きました。多分 IntelliJ 以外の JetBrains IDE でもできるかと思います。 PyCharm とか PHPStorm とか。

IntelliJ から HTTP リクエストする方法

まずは拡張子が .http のファイルを作成します。

今回は、サクッと叩ける niconico コンテンツ検索 API を叩いてみようと思うので、 niconico_search.http というファイル名にしました。

内容には、リクエスト内容をそのまま書きます。

niconico_search.http
POST https://api.search.nicovideo.jp/api/v2/video/contents/search
Content-Type: application/x-www-form-urlencoded;
TestHeader: Something

q=ゲーム&targets=tags&_sort=-viewCounter&_context=test&fields=contentId,title
  • 1行目は メソッド URI
  • 2行目以降はリクエストヘッダ Key:Value
  • 空行を挟んでその下がリクエストボディ

左側に三角ボタンが出ているので、「Run ...」をクリックすると API リクエストが実行されます。

image.png

実行結果はこんな感じです。表示形式は、text, JSON, XML, HTML に対応しています(HTMLはレンダリングされるわけではないので、見づらいです)

image.png

### で区切ると、複数のリクエストを1つのファイルに記述することができます。ファイルは保存できるので、いつでも同じリクエストをすることができます。API の動作確認に便利です。

image.png

niconico の検索 API は GET でも叩けるのですが、今回は例としてわかりやすいように POST で叩きました。

なぜ IntelliJ がいいのか

通常は、開発しながら API の動作確認をすることが多いので、コーディングから動作確認まですべてが IntelliJ で完結するのがめっちゃ便利です。

しかも、ファイルをリポジトリに追加しておいたり、文字列を Slack に貼り付けたりすれば、他の人でも簡単に動作確認ができます。

GET のクエリパラメータが長くなると見づらいのが欠点です。この場合は Postman とかのほうが便利かも。

まとめ

IntelliJ で .http という拡張子で API リクエスト等を保存しておくと、動作確認に便利!

IntelliJ 以外にデバッグツールを開く必要もなく、 IntelliJ ひとつで完結できるのでオススメです。

他にも開発便利情報をブログに書いていたりするので、気になった人は確認してみてください。↓は PHP アドベントカレンダーの記事です。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away