From 12fc04ff115ccc1c0883b314873acdf389782cd7 Mon Sep 17 00:00:00 2001 From: Shin Kojima Date: Sun, 21 Sep 2014 21:07:48 +0900 Subject: [PATCH] [ja] apply patch] --- ja/ebook/03.1.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/ja/ebook/03.1.md b/ja/ebook/03.1.md index 6d4c9b68..5db00d9e 100644 --- a/ja/ebook/03.1.md +++ b/ja/ebook/03.1.md @@ -85,6 +85,8 @@ HTTPプロトコルはステートレスです。同じクライアントの前 //空行、リクエストヘッダとボディを分けるために使われます。 //ボディ、リソースへのリクエストのオプション、例えばPOSTが渡すオプション +HTTPプロトコルはサーバに対して交互にリクエストを送る方法が定義されています。基本は四種類。GET,POST,PUT,DELETEです。ひとつのURLアドレスはひとつのネットワーク上のリソースを描写しています。またHTTPの中のGET, POST, PUT, DELETEはこのリソースの検索、修正、増加、削除の4つの操作に対応しています。よく見かけるのはGETとPOSTです。GETは一般的にリソースの情報を取得/検索するために用いられ、POSTはリソース情報を更新するために用いられます。 + fiddlerパケットキャプチャを通して下のようなリクエスト情報を見ることができます。 ![](images/3.1.http.png?raw=true) @@ -95,13 +97,12 @@ fiddlerパケットキャプチャを通して下のようなリクエスト情 図3.5 fiddlerがキャプチャしたPOST情報 -**GETリクエストのボディが空であることがわかります。POSTリクエストにはボディがあります**。 - -HTTPプロトコルはサーバに対して交互にリクエストを送る方法が定義されています。基本は四種類。GET,POST,PUT,DELETEです。ひとつのURLアドレスはひとつのネットワーク上のリソースを描写しています。またHTTPの中のGET, POST, PUT, DELETEはこのリソースの検索、修正、増加、削除の4つの操作に対応しています。よく見かけるのはGETとPOSTです。GETは一般的にリソースの情報を取得/検索するために用いられ、POSTはリソース情報を更新するために用いられます。 GETとPOSTの区別を見てみましょう。 -1. GETが入力するデータはURLの後に置かれます。?によってURLと渡すデータを分割します。オプションの間は&で繋ぎます。例えばEditPosts.aspx?name=test1&id=12345。POSTメソッドは入力するデータをHTTPパケットのBodyの中に置きます。 -2. GETが入力するデータの大きさには制限があります。(ブラウザのURLに対する長に制限があるためです。)またPOSTメソッドで入力するデータには制限がありません。 -3. GETメソッドで入力されたデータはセキュリティの問題を引き起こします。例えばログイン画面があったとして、GETメソッドでデータを入力した場合、ユーザ名とパスワードはURL上にあらわれてしまうことになります。もしページがバッファリングされていたり他の人によっがこのマシンにアクセスすることができれば、ヒストリログからこのユーザのアカウントとパスワードを取得することができてしまいます。 + +1. GETリクエストのボディが空であることがわかります。POSTリクエストにはボディがあります。 +2. GETが入力するデータはURLの後に置かれます。?によってURLと渡すデータを分割します。オプションの間は&で繋ぎます。例えばEditPosts.aspx?name=test1&id=12345。POSTメソッドは入力するデータをHTTPパケットのBodyの中に置きます。 +3. GETが入力するデータの大きさには制限があります。(ブラウザのURLに対する長に制限があるためです。)またPOSTメソッドで入力するデータには制限がありません。 +4. GETメソッドで入力されたデータはセキュリティの問題を引き起こします。例えばログイン画面があったとして、GETメソッドでデータを入力した場合、ユーザ名とパスワードはURL上にあらわれてしまうことになります。もしページがバッファリングされていたり他の人によっがこのマシンにアクセスすることができれば、ヒストリログからこのユーザのアカウントとパスワードを取得することができてしまいます。 ### HTTPレスポンスパケット(サーバ情報) HTTPのresponseパケットを見てみることにしましょう。構造は以下のとおりです: