HTTPはじめに
HTTPは、その単純な、分散ハイパーメディア情報システムのための迅速な方法を、オブジェクト指向のアプリケーション層に属するプロトコルです。それが1990年に提案され、使用および開発の数年後、継続的に改善され、拡張されました。
次のようにHTTPプロトコルの主な特徴を要約することができます。
1.サポートするクライアント/サーバモデル。
2.シンプルかつ高速:サーバーへの顧客サービス要求、代わりにリクエストメソッドとパスを送ります。リクエスト方法は、一般的にGET、HEAD、POSTを使用していました。各メソッドは、クライアントはサーバーの異なる種類を提供します。シンプルなHTTPプロトコルのためには、HTTPサーバーは、プログラム小規模になりますので、コミュニケーションは非常に高速です。
3.フレキシブル:HTTPデータ・オブジェクトの任意のタイプの送信を可能にします。コンテンツタイプでマークされている伝送のタイプです。
4.接続なし:なし制限を意味しないが、接続ごとに1つだけの要求を取り付けていません。サーバがクライアントの要求を処理し、顧客の応答を受信した後、すなわち、切断。このようにして、送信時間を節約することができます。
5.ステートレス:HTTPプロトコルはステートレスなプロトコルです。いかなる状態は、トランザクション処理とメモリのためのプロトコルではありません。接続ごとに送信されるデータの量をもたらすことができる情報の前に必要なその後の処理は、それが再送信されなければならないことを状態手段の欠如は、増加された場合。一方、それはより速く、サーバーに応じて、以前の情報を必要としません。
httpリクエスト
編集以下のように、form.htmlフォームページを:
以下をキャプチャ、送信ボタンをクリックしてください:
1)要求行
要求モード: POST、GET
リソースが要求された: /DemoEE/form.html
プロトコルバージョン: HTTP / 1.1
HTTP / 1.0、送信要求、接続を作成するためのWebリソースが切断され得ること。
HTTP / 1.1、ウェブリソースの複数の接続を作成するための送信要求は、接続されたままです。
2)要求ヘッダ
リクエストヘッダを表すキーと値のペアを使用して、クライアントにサーバに関する情報が送信されるキー:値
一般的なリクエストヘッダ |
描述 (红色掌握,其他了解) |
Referer |
浏览器通知服务器,当前请求来自何处。如果是直接访问,则不会有这个头。常用于:防盗链 |
If-Modified-Since |
浏览器通知服务器,本地缓存的最后变更时间。与另一个响应头组合控制浏览器页面的缓存。 |
Cookie |
与会话有关技术,用于存放浏览器缓存的cookie信息。 |
User-Agent |
浏览器通知服务器,客户端浏览器与操作系统相关信息 |
Connection |
保持连接状态。Keep-Alive 连接中,close 已关闭 |
Host |
请求的服务器主机名 |
Content-Length |
请求体的长度 |
Content-Type |
如果是POST请求,会有这个头,默认值为application/x-www-form-urlencoded,表示请求体内容使用url编码 |
Accept: |
浏览器可支持的MIME类型。文件类型的一种描述方式。 MIME格式:大类型/小类型[;参数] 例如: text/html ,html文件 text/css,css文件 text/javascript,js文件 image/*,所有图片文件 |
Accept-Encoding |
浏览器通知服务器,浏览器支持的数据压缩格式。如:GZIP压缩 |
Accept-Language |
浏览器通知服务器,浏览器支持的语言。各国语言(国际化i18n) |
3)请求体
当请求方式是post时,请求体会有请求的参数,格式如下:
username=zhangsan&password=123
如果请求方式为get,那么请求参数不会出现在请求体中,会拼接在url地址后s
http://localhost:8080...?username=zhangsan&password=123