作业
一.HTTP协议
HTTP协议是超文本传输协议,基于TCP/IP通信协议来传递数据,是一个属于应用层的面向对象的协议。常用状态码
状态码 | 意义 |
---|---|
200 OK | 从客户端发来的请求在服务器端被正常处理 |
204 No Content | 服务器接收的请求已成功处理,但在返回响应报文中不含实体的主体部分 |
301 Moved Permanently | 永久性重定向 |
302 Found | 临时性重定向 |
304 Not Modified | 客户端发送附带条件请求时,服务器端允许请求访问资源,但未满足条件的情况 |
400 Bad Request | 请求报文中存在语法错误 |
403 Forbidden | 对请求资源的访问被服务器拒绝 |
404 Not Found | 服务器上无法找到请求的资源 |
500 lnternal Server Error | 服务器端在执行请求时发生了错误 |
二.HTTP URL
URL,中文叫做统一资源定位符,是互联网上用来表示某一处资源的地址。
以下面这个URL为例,介绍下普通URL的各部分组成:
http :// www.asp.com: 8080 /news /index.asp? boardID=5&ID=24618&page=1# name协议部分 域名部分 端口部分 虚拟目录部分 文件名部分 参数部分 锚部分
HTTP之请求方法
根据HTTP标准,HTTP请求可以使用多种请求方法。
HTTP1.0 | HTTP1.1 |
---|---|
GET,POST,HEAD | GET,POST,HEADOPTIONS,PUT,DELETE,TRACE,CONNECT |
描述
序号 | 方法 | 描述 |
---|---|---|
1 | GET | 请求指定的页面信息,并返回实体主体。 |
2 | HEAD | 类似于GET请求,只不过返回的响应中没有具体的内容,用于获取报头。 |
3 | POST | 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有的资源的修改。 |
4 | PUT | 从客户端向服务器传送的数据取代指定的文档的内容。 |
5 | DELETE | 请求服务器删除指定的特面。 |
6 | CONNECT | HTTP/1.1 协议中预留给能够将连接改为管道方式的代理服务器。 |
7 | OPTIONS | 允许客户端查看服务器的性能。 |
8 | TRACE | 回显服务器收到的请求,主要用于测试或诊断。 |
9 | PATCH | 是对PUT方法的补充,用来对已知资源进行局部更新。 |
三.计算机网络模型基础
OSI模型总共分为七层,从下到上分别是:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。每层基本协议如下图所示:
四.http协议中,常见头部字段信息的含义(请求头和响应头)
Request
第一部分:请求行,用来说明请求类型,要访问的资源以及所使用的HTTP版本.
第二部分:请求头部,紧接着请求行(即第一行)之后的部分,用来说明服务器要使用的附加信息
从第二行起为请求头部,HOST将指出请求的目的地.User-Agent,服务器端和客户端脚本都能访问它,它是浏览器类型检测逻辑的重要基础.该信息由你的浏览器来定义,并且在每个请求中自动发送等等
第三部分:空行,请求头部后面的空行是必须的
即使第四部分的请求数据为空,也必须有空行。
第四部分:请求数据也叫主体,可以添加任意的其他数据。
这个例子的请求数据为空。
1 | GET /index.asp HTTP/1.1 请求行,说明请求类型,要访问的资源以及所使用的HTTP版本 |
1 | POST / HTTP1.1 |
Response
HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行和响应正文。
第一部分:状态行,由HTTP协议版本号, 状态码, 状态消息 三部分组成。
第二部分:消息报头,用来说明客户端要使用的一些附加信息
第三部分:空行,消息报头后面的空行是必须的
第四部分:响应正文,服务器返回给客户端的文本信息。
空行后面的html部分为响应正文。
1 | HTTP/1.1 200 OK |