メソッド名 パス名 HTTP/バージョン
パス名には、Hostヘッダに続くパスを指定します。バージョンには1.0と1.1がありますが、現在では1.1が主流です。
Method | 説明 |
---|---|
HEAD | ヘッダのみの情報を要求する |
GET | 情報を要求する |
POST | 情報をサーバに転送する |
GETメソッドではクエリをURLに含めて指定するため、そのサイズがURLの最大長によって制限されます。このURLの最大長はサーバやブラウザによって異なりますが、2000文字程度に抑えるべきです。http - What is the maximum length of a URL in different browsers? - Stack Overflow
最大 | ||
---|---|---|
サーバ | Apache | 8,192byteまで |
IIS | 16,384文字まで | |
Perl HTTP::Daemon | 8,000文字まで | |
ブラウザ | Internet Explorer 8 | 2,083文字まで |
Firefox 1.5 | 100,000文字以上 | |
Safari | 80,000文字以上 | |
Opera | 190,000文字以上 |
サーバによっても異なりますが、制限を超えた場合にはステータスコードが414で、「Request-URI Too Large」のように返されます。
長いURLでリクエストしたときの、サーバの応答を確認できます。
※Internet Explorerは2083文字の制限に自動で切り詰めるため、サーバの応答を正しく確かめられません。
URLエンコード (パーセントエンコード) により予期せず文字数が増えることがあるため、ASCII以外の文字には特に注意が必要です。
POSTメソッドは、サーバにデータを送信する場合に使用します。GETでもデータの送信は可能ですが、POSTではより大きなデータを扱えます。HTTP Methods GET vs POST
データの送信方法として、
の2種類があります。
Content-Disposition: form-data; name="NAME"multipart/form-data - Forms in HTML documents
Formから送信されるときの既定のコンテンツタイプで、次の規則に従います。
HTTP/バージョン ステータスコード メッセージ
メッセージは、ステータスコードを説明するものです。
Connection | 説明 |
---|---|
Keep-Alive | 持続的接続をする |
close | 接続を閉じる |