计算机网络

应用层

进程通过套接字向网络收发报文,套接字是应用层和运输层的接口。

IP地址标识主机,端口号标识进程。Web服务器的端口号为80,SMTP的端口号为25。

HTTP

Web的应用层协议是超文本传输协议(HTTP)

客户端通过套接字接口发送HTTP请求报文,并从套接字接口接收HTTP响应报文。

服务端不存储任何客户端的信息,即客户几秒内连续请求同一服务端数据,每次都会反馈,是一个无状态协议

非持续连接:每个请求/响应经一个单独TCP发送
持续连接:所有请求/响应经由相同的TCP发送

HTTP默认为持续连接,但也可以配置为非持续连接。

HTTP报文格式

GET /somedir/page.html HTTP/1.1            //HTTP请求报文
Host: www.someschool.edu
Connection: close
User-agent: Mozilla/5.0
Accept-language: fr
(data data data data data ...
  • 第一行为请求行

    • 方法字段

    • URL字段

    • HTTP版本字段

  • 第二行至第五行为首部行

    • Host:主机名;

    • Connection:表示不使用持续连接,请求完毕就关闭连接;

    • User-agent:指明用户代理,即向服务器发送请求的浏览器类型,如Mozilla/5.0就是Firefox浏览器;

    • Accept-language:表示希望得到的语言版本,如fr为法语。

  • 第六行为实体体,GET方法的实体体为空,POST方法会在实体体放入表单,当然使用GET也可以在URL后拼接? name & year实现表单请求。

其余方法字段:
* HEAD方法类似于GET方法,服务端收到HEAD请求时将会用一个HTTP报文响应但并不返回,更多地是作为调试跟踪之用。

  • PUT方法常与Web发行工具联合使用,允许用户上传对象到指定的Web服务器上指定的目录。

  • DELETE方法允许用户删除Web服务器上的对象。

HTTP/1.1 200 OK                       //HTTP响应报文
Connection: close
Date: Tue, 18 Aug 2015 15:44:04 GMT
Server: Apache/2.2.3 (CentOS)
Last-Modified: Tue, 18 Aug 2015 15:11:03 GMT
Content-Length: 6821
Content-Type: text/html
(data data data data data ...)
  • 第一行为状态行

    • 协议版本字段

    • 状态码

    • 状态信息

  • 第二行至第八行为首部行

    • Connection:同请求报文,发送完成后关闭TCP连接

    • Date:发送该响应报文的日期时间

    • Server:表明该报文由一台Apache Web服务器产生
    • Last-Modified:最后修改时间,与下文中Web缓存器协同使用
    • Content-Length:被发送对象的字节数
    • Content-Type:表明实体体中的对象是HTML文本
  • 第九行为实体体

常见响应状态码
* 200 OK:请求成功
* 301 Moved Permanently:请求的对象已经被永久转移了,新的URL定义在响应报文的Location首部行中
* 304 Not Modified:请求内容未被修改
* 400 Bad Request:一个通用差错代码,指示该请求不能被服务器理解
* 404 Not Found:被请求的文档不在服务器上
* 505 HTTP Version Not Supported:服务器不支持请求报文使用的HTTP协议版本

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值