HTTP服务器与HTTP客户机之间的会话如下:

1 客户机与服务器建立联系

与服务器建立连接,就是与SOCKET建立连接,因此要指定机器名称、资源名称

和断口号,可以通过URL来提供这些信息。URL的格式为:

HTTP:///[端口号]/[路径][?<查询信息>]

资源的缺省值是INDEX或DEFAULT,断口号缺省为80.

2 客户向服务器提出请求

请求信息包括希望返回的文件名和客户机信息.客户机信息以请求头发送

给服务器,请求头包括HTTP方法和头字段.

HTTP方法常用的有GET、HEAD、POST,而PUT、DELETE、LINK、UNLINK方法

许多HTTP服务器都不使用。

头字段包括:

。DATE:请求发送的日期和时间

。PARGMA:用于向服务器传输与实现无关的信息。这个字段还用于告诉代理服

务器,要从实际服务器而不是从高速缓存取资源

。FORWARDED:可以用来追踪机器之间,而不是客户机和服务器的消息。这个字段

可以用来追踪在代理服务器之间的传递路由。

。MESSAGE_ID:用于唯一地标识消息

。ACCEPT: 通知服务器客户所能接受的数据类型和尺寸。(*/*表示可以接受

所有类型的数据。

。AOTHORIZATION:向服务器提供旁路安全保护和加密机制,若服务器

不需要这个字段,则不提供这个字段

。FROM:当客户应用程序希望想服务器提供有关其电子邮件地址时使用

。IF-MODEFIED-SINCE用于提供条件GET。如果所请求的文档自从所指定

的日期以来没有发生变化,则服务器应不发送该对象。如果所发送的日期格式不合

法,或晚于服务器的日期,服务器会忽略该字段

。BEFERRER:向服务器进行资源请求用到的对象

。MIME-VERTION:用于处理不同类型文件的MIME协议版本号

。USER-AGENT:有关发出请求的客户信息

3 服务器对请求作出应答

服务器收到一个请求,就会立刻解释请求中所用到的方法,并开始处理应答。

服务器的应答消息也包含头字段形式的报文信息。

。报文第一行是状态行,格式为 <状态代码><解释短语>

状态码是个三位数字码,分为四类:

。以2开头,表示请求被成功处理

。以3开头,表示请求被重定向

。以4开头,表示客户的请求有错

。以5开头,表示服务器不能满足请求

解释短语是对状态码的解释。

。报文还向客户返回几个头字段,如:

。STATUS CODE/REASON PHRASE

。DATE

。LAST-MODIFIED

。SERVER

。CONTENT _TYPE

。RETRY_AFTER:服务器太忙时返回这个字段

。WWW_AUTHENTICATE:当服务器的安全机制要求客户发送某中授权信息时使用该字段

。报文最后是实体信息,即客户请求得到的HTTP服务器上的资源内容。

4 关闭客户与服务器之间的连接

转载于:https://www.cnblogs.com/bluespot/archive/2008/02/26/1082259.html

HTTP协议(学习笔记)相关推荐

  1. Servlet和HTTP请求协议-学习笔记02【Servlet_体系结构与urlpartten配置、HTTP请求协议】

    Java后端 学习路线 笔记汇总表[黑马程序员] Servlet和HTTP请求协议-学习笔记01[Servlet_快速入门-生命周期方法.Servlet_3.0注解配置.IDEA与tomcat相关配置 ...

  2. Servlet和HTTP请求协议-学习笔记01【Servlet_快速入门-生命周期方法、Servlet_3.0注解配置、IDEA与tomcat相关配置】

    Java后端 学习路线 笔记汇总表[黑马程序员] Servlet和HTTP请求协议-学习笔记01[Servlet_快速入门-生命周期方法.Servlet_3.0注解配置.IDEA与tomcat相关配置 ...

  3. POP3协议学习笔记

    今日得闲,于是将POP3的学习笔记也整理出来! 互联网上的TCP/IP,POP3/SMTP等资料多如牛毛,这里只是自己一点点心得,另外对于各位网络方面的大牛请安静的路过,我可不喜欢在关公面前耍大刀.. ...

  4. CoAP协议学习笔记 1.3 用UDP工具来调试CoAP

    1 前言 CoAP的调试,目前没找到好用的工具,网上说的火狐插件现在也不能用了,多希望手头的TCP/UDP网络调试工具就可以支持. 既然CoAP是基于UDP来组包的,那肯定是可以实现. 所以这篇文章给 ...

  5. 网络协议学习笔记 · 22

    IPv6 · 流媒体 · 即时通讯 · 缓存 · 网络爬虫 VPN 作用 VPN与代理的区别 实现原理(隧道协议) 网络爬虫 简易实例 robots.txt 无线网络 缓存(Cache) 响应头 请求 ...

  6. CoAP协议学习笔记 1.2 一张表了解 CoAP 协议

    1 前言 对于CoAP协议的学习,这份100多页的文档肯定没法背下来.我们只需把协议当作工具书,大体知道主体的内容,在遇到细节问题时再去具体章节找问题. 本篇笔记中先对 CoAP 协议内容做个基础了解 ...

  7. CoAP协议学习笔记 3.1 CoAP协议翻译 加密基础介绍

    CoAP协议学习笔记可点此查看. 1 前言 在之前的学习中,没有过多关注加密.但实际部分厂家的IoT平台(阿里云.OneNET)已经启用了相关安全处理,有必要深入学习下. 在 CoAP 协议 RFC7 ...

  8. BGP协议学习笔记——BGP基础

    BGP协议学习笔记--BGP基础(BGP概念.BGP报文.BGP状态机.BGP关系建立.BGP路由通告) 说明:本文学习笔记整理自网络.华为公开产品文档.华为公开PPT及部分的自我理解 一.BGP简介 ...

  9. 极客HTTP协议学习笔记破冰篇(1-7)

    极客HTTP协议学习笔记破冰篇(1-7) 前言 各篇章笔记链接 一.学习笔记 1.HTTP的前世今生 2.HTTP是什么 3.与HTTP相关的各种概念(上) 4.与HTTP相关的各种概念(下) 5.常 ...

  10. UDT协议学习笔记(一)UDT概述

    UDT协议学习笔记(一)UDT概述 本人近来就职于国内某著名互联网血汗工厂,从事分布式后台相关的工作,最近的项目主要是网络相关.我们有许多海外的proxy节点,为了加速海外proxy与国内某机房的通信 ...

最新文章

  1. 【转】触屏手机电话拨打链接
  2. 多个tab可以组成一个表单吗 js_11个表单设计小技巧
  3. 基于htmlparser实现网页内容解析
  4. 玄惭 mysql_阿里云数据库专家玄惭的“武功”全记录之最佳实践、双十一特别篇...
  5. Python+Appium+POM实现APP端自动化测试
  6. ibatis中isEquals、isNotEmpty的用法
  7. 8个树莓派超级计算机_6 个可以尝试的树莓派教程
  8. OpenStack精华问答 | OpenStack的目标是什么?
  9. 2014牡丹江网络赛ZOJPretty Poem(暴力枚举)
  10. box-shadow
  11. 五子棋java百度贴吧_五子棋单机版
  12. tomcat https 启用8443加证书
  13. Taro使用wxParse富文本组件
  14. DRF Serializer序列化器使用
  15. 喜讯 | 图扑科技再获厦门数字经济创新创业大赛一等奖
  16. 【DPDK】网卡绑定和解绑步骤
  17. 不畏将来,不念过往,如此安好
  18. php mysql 白屏_PHP出现空白页面与无法载入mysql
  19. 相关性 与 相干性 那些事
  20. css自动均匀分布,如何在CSS中均匀分布?

热门文章

  1. 系统设计(一)——Overview
  2. 零基础入门语义分割-Task5 模型训练与验证
  3. IBM Machine Learning学习笔记——Time Series and Survival Analysis
  4. c语言标准库assert,C 标准库 - assert.h
  5. Coding the Matrix Week 1 The Vector Space作业
  6. Linux内核源代码分析——可执行文件header处理(二进制文件读写范例,写DUL工具入门指引)...
  7. 对棋盘完美覆盖问题证明过程的质疑及其解决
  8. NAT对语音业务的影响(终端控制方案…
  9. 数据结构java版 大学_数据结构(Java版)
  10. 输入日期java_java怎么格式化输入日期