HTTPとは?
HTTPとは?
HTTP(Hypertext Transfer Protocol)は、WebブラウザとWebサーバーがデータをやり取りするための通信ルールです。
WebページがWeb表示される仕組み
1. ブラウザで URL を入力
↓
2. ブラウザが HTTP リクエストを送信
↓
3. サーバーが処理して HTTP レスポンスを返す
↓
4. ブラウザがHTMLを解釈して表示
HTTPの基本概念
クライアントとサーバー
- クライアント: Webブラウザ(データを要求する側)
- サーバー: Webサーバー(データを提供する側)
クライアント(ブラウザ)
↓ リクエスト「このページをください」
サーバー
↓ レスポンス「はい、HTMLをどうぞ」
クライアント(ブラウザ)
HTTPとHTTPS
| HTTP | HTTPS |
|---|---|
| 通信が暗号化されていない | 通信が暗号化されている |
| http:// で始まる | https:// で始まる |
| 盗聴のリスク | 安全 |
⚠️ セキュリティ
ログインページやクレジットカード情報を扱うページは、必ずHTTPSを使います。現在ではほとんどのサイトがHTTPSです。
ログインページやクレジットカード情報を扱うページは、必ずHTTPSを使います。現在ではほとんどのサイトがHTTPSです。
Playwrightとの関係
Playwrightでテストを書く際、HTTPの知識が役立つ場面:
1. ページ遷移の理解
// HTTPリクエストが発生
await page.goto('https://example.com');
2. APIリクエストの検証
// APIリクエストの待機
const response = await page.waitForResponse('**/api/users');
console.log(response.status()); // HTTPステータスコード
3. Cookieの操作
// Cookieを設定(ログイン状態の再現など)
await context.addCookies([{
name: 'session',
value: 'abc123',
domain: 'example.com',
path: '/',
}]);
よく使うHTTPメソッド
| メソッド | 用途 | 例 |
|---|---|---|
| GET | データ取得 | ページ表示、検索 |
| POST | データ送信 | フォーム送信、ログイン |
| PUT | データ更新 | プロフィール編集 |
| DELETE | データ削除 | アカウント削除 |
💡 覚えておくポイント
- GET: データを「見る」だけ
- POST: データを「送る」
実際のHTTPリクエスト例
ブラウザがGoogleにアクセスする場合:
GET / HTTP/1.1
Host: www.google.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
Accept: text/html
サーバーからのレスポンス:
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 12345
<!DOCTYPE html>
<html>
...
</html>
次のチャプターでは、リクエストとレスポンスについて詳しく学びます。