Apidog

オールインワン協働API開発プラットフォーム

API設計

APIドキュメント

APIデバッグ

APIモック

API自動テスト

Postman HTTP2非対応問題:HTTP2のAPIのテスト方法はこちら

2017年以来、いろんなユーザーは、PostmanがHTTP2というプロトコルをサポートすることを期待しています。しかし、6年も経ていた今、PostmanはまだHTTP2をサポートしていません。本文では、HTTP2の基本情報を紹介した上、HTTP2のAPIをテストする方法を皆さんに紹介します。

中村 拓也

中村 拓也

Updated on 11月 12, 2024

HTTP2というプロトコルは、どんどん流行っているようになり、多くのユーザーに利用されています。それに伴って、HTTP2を採用しているAPIも多くなります。2017年以来、いろんなユーザーは、PostmanがHTTP2というプロトコルをサポートすることを期待しています。しかし、6年も経ていた今、PostmanはまだHTTP2をサポートしていません。本文では、HTTP2の基本情報を紹介した上、HTTP2のAPIをテストする方法を皆さんに紹介します。

HTTP2とは

HTTP2は、2015年に正式リリースされたHTTPの新しいバージョンです。HTTP1.1の問題点を改善するために設計されており、主に以下のような新機能を備えています。

まず、ヘッダー圧縮が実装されているため、通信のオーバーヘッドを大幅に削減できます。また、コネクションを多重化することで1つのTCPコネクション上で複数のデータストリームを同時に転送できるようになり、通信効率が向上します。そして、サーバープッシュによってサーバーがクライアントに必要と思われるデータをあらかじめ送信できるようになるため、クライアント側のデータ取得が迅速になります。

http2

その一方で、HTTP1.1との後方互換性も維持されているので、すぐに新しいプロトコルに置き換えることはできませんが、主要なブラウザやWebサーバーで既にHTTP2への対応が進んでいるのが現状です。HTTPの高速化と通信効率の改善に寄与する新世代のプロトコルとして、徐々にその普及が進んでいくことが期待されています。

PostmanのHTTP2へのサポート

2017年以来、いろんなユーザーは、PostmanがHTTP2というプロトコルをサポートすることを期待しています。しかし、6年も経ていた今、PostmanはまだHTTP2をサポートしていません。

ソース:https://github.com/postmanlabs/postman-app-support/issues/2701

Postmanの現状として、HTTP2をサポートしていないので、HTTP2を採用しているAPIをテストすると、レスポンスで「Could not get response(レスポンスを取得できない)」というエラーが表示され、テストに失敗しています。

例えば、https://api.sandbox.push.apple.com/ はHTTP2を採用しているサーバーになります。

http2のサーバー

Postmanを使って、リクエストをこのサーバーに送信すると、レスポンスが取得できません。

Postmanはhttp2に非対応

それでは、HTTP2のAPIをテストするには、どうしたらいいですか?次は、Apidogというより包括的なAPIクライアントツールを使って、HTTP2のAPIを簡単にテストできる方法を皆さんに紹介します。

button

ApidogでHTTP2のAPIを簡単にテスト可能に

Apidogは、APIの設計、仕様書生成と共有、テスト及びAPIモックにも対応可能なAPIライフサイクリ管理ツールになります。Apidogの最新バージョンでは、HTTP2プロトコルへのサポートが開始されました。これにより、Apidogを使用して、いつものHTTP APIのようにHTTP2のAPIを簡単にテストすることが可能です。

ステップ⒈Apidogを開き、リクエストを新規に作成します。

ステップ⒉Apple Push Notification Service(Appleプッシュ通知サービス)の「https://api.sandbox.push.apple.com/」をエンドポイントのURLを送信すると、エラーが発生されずレスポンスを成功に取得できます。

ApidogでHTTP2リクエストを送信

また、「設定タブ」に切り替えて、HTTP2に対応するかどうかを指定するために、HTTPとHTTPSの接続方式を選択することも可能です。

ApidogでHTTP2の設定
button

HTTPS接続方式の選択

HTTP/1.1

従来のようにHTTP/1.1という接続方式を選択すると、Apidogは、HTTP1.1及びそれ以前のプロトコルを採用するサーバーからレスポンスを取得できます。

HTTP/2 ALPN

HTTP/2 ALPNに切り替えると、ApidogはHTTP/2 ALPN(Application-Layer Protocol Negotiation)を使用して接続を確立します。まずはHTTP/2を使用して接続しますが、サーバーがHTTP/2をサポートしないことを検出した場合は、自動的にHTTP/1.1を使用します。こういう流れのおかげで、ApidogはAPIが利用しているHTTPプロトコルを自動的に判断できるので、いつものようにそうすれば、HTTP/2のAPIをテストしたりすることができます。

HTTP接続方式の選択

HTTP/1.1

HTTP接続方式をHTTP/1.1を指定すると、Apidogは、HTTP/1.1のみからレスポンスを取得できます。

HTTP/2 Prior Knowledge

HTTP接続はプレーンなTCP接続で行われるため、TLSハンドシェイク時に行われるALPNによるプロトコルネゴシエーションは利用できません。そこで、HTTP接続方式でHTTP/2を選択すると、Apidogは、HTTP/2を直接使用してh2c接続を確立します。サーバーがHTTP/2をサポートしていない場合は接続失敗になります。 HTTP/1.1は使用されません。

まとめ

Postmanは残念ながら現在もHTTP2に対応していませんが、Apidogを利用することでHTTP2のAPIも簡単にテストすることができます。ApidogのHTTP/2 ALPN接続では、サーバーのプロトコルを自動検知して最適な通信を実現します。設定でHTTP/2を直接指定することも可能です。APIテストツールとして、ApidogはPostmanに代わる強力な選択肢となります。

button
Postmanの基本的な使い方を(初心者向け)チュートリアル

Postmanの基本的な使い方を(初心者向け)

Postmanは、APIテストなどを行うための定番のツールになります。API戦略を実施する場合は、Postmanを利用することで、その効率性を大幅に向上できます。そこで、本文では、基本的なPostmanの使い方を皆さんに紹介して、Postmanを全く使ったことがないユーザーでも、本文の内容を参照して、Postmanを使いこなすことができると思います。

中村 拓也

4月 8, 2025

Clineで無料体験!Gemini 2.5 Proが今すぐ試せる方法チュートリアル

Clineで無料体験!Gemini 2.5 Proが今すぐ試せる方法

Clineを通じてGoogleのGemini 2.5 Proに無料でアクセスできることで、生産性を向上させ、複雑な問題解決に役立つ強力なAIアシスタントを提供。制約はあるものの、無料の利点は大きい。

中村 拓也

3月 28, 2025

Cloudflareで実現する高性能MCPサーバー構築ガイド:7ステップ完全解説チュートリアル

Cloudflareで実現する高性能MCPサーバー構築ガイド:7ステップ完全解説

このガイドに従えば、Cloudflareで高性能なMCPサーバーをデプロイし、拡張性、安全性、パフォーマンスを向上させることができます。すべての工程を詳細に解説します。

中村 拓也

3月 24, 2025