- cURL / curl
- オープンソースのコマンドラインツールおよびlibcurlライブラリ。コマンドラインからURLを介してHTTP/HTTPS/FTPなどのプロトコルリクエストを送信するためのもので、開発者がAPIをデバッグするための最も一般的なツール。
- HTTPメソッド
- HTTPリクエストのアクション。一般的なもの:GET(読み取り)、POST(作成)、PUT(全体更新)、PATCH(部分更新)、DELETE(削除)、HEAD(ヘッダー取得)、OPTIONS(サーバー機能の照会)。
- リクエストヘッダー
- HTTPリクエスト内のメタデータのキーと値のペア。Content-Type、Authorization、User-Agent、Cookie、Acceptなど。curlでは-H/--headerで指定。
- リクエストボディ
- HTTPリクエストのデータ部分。POST/PUT/PATCHでよく使用され、curlでは-d/--data/--data-binary/-Fで指定。一般的な形式:JSON、form-urlencoded、multipart/form-data。
- Content-Type
- ボディのメディアタイプを示すリクエスト/レスポンスヘッダー。application/jsonはJSON、application/x-www-form-urlencodedはURLエンコードフォーム、multipart/form-dataはファイルアップロードフォーム。
- Basic認証
- HTTP基本認証。Authorization: Basic base64(user:pass)ヘッダーでユーザー名とパスワードを渡します。curlでは-u user:passで指定。
- Bearer Token
- トークンベースの認証方式。Authorization: Bearer <token>ヘッダーで渡します。JWT/OAuth2で一般的。
- User-Agent
- クライアントタイプ(ブラウザ/クローラー/スクリプト)を識別するリクエストヘッダー。curlはデフォルトで"curl/バージョン番号"を送信します。多くのウェブサイトは非ブラウザUAをブロックするため、-Aで指定するのが一般的。
- Cookie
- サーバーがSet-Cookieで送信し、ブラウザが後続のリクエストでCookieヘッダーで返すキーと値のペア。セッション維持に使用されます。curl -bでCookieを送信、-cでCookieを保存。
- Referer
- 現在のリクエストの参照元ページURLを示すリクエストヘッダー。一部のアンチホットリンク/CSRF検証でチェックされます。curl -eで設定。
- リダイレクト(3xx)
- サーバーが301/302/303/307/308ステータスコードを返し、ブラウザに新しいURLへのジャンプを指示すること。curlはデフォルトで追跡せず、-L/--locationを追加すると追跡します。
- --compressed
- curlオプション。Accept-Encoding: deflate, gzipヘッダーを自動的に追加し、レスポンスを自動的に解凍します。設定しないとレスポンスが文字化けした圧縮データになる場合があります。
- -k/--insecure
- curlオプション。HTTPS証明書検証をスキップします。自己署名証明書のテスト環境でのみ使用し、本番環境では使用禁止。
- fetch API
- ブラウザネイティブのJavaScript HTTPリクエストAPI。Promiseを返し、すべてのモダンブラウザでサポート。
- Axios
- Promiseベースの人気HTTPクライアントライブラリ。ブラウザとNode.jsの両方で使用可能、自動JSONシリアライズ、インターセプター、タイムアウトキャンセル。
- OkHttp
- Square社製のJava/Android HTTPクライアントライブラリ。高性能、HTTP/2サポート、接続プール、透過的GZIP。
- HttpClient(.NET)
- C#/.NETで推奨されるHTTPクライアント。System.Net.Http名前空間、.NET Core/.NET 5+標準API。
- Invoke-RestMethod
- PowerShell 3.0+組み込みのHTTPリクエストコマンドレット。JSON/XMLレスポンスを自動的にPowerShellオブジェクトに解析。