2019-5-7
Posted w410782823
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2019-5-7相关的知识,希望对你有一定的参考价值。
HTTP
定义:
Hyper Text Transfer Protocol(超文本传输协议)的缩写,
是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。
HTTP是一个基于TCP/IP通信协议来传递数据(html 文件, 图片文件, 查询结果等)。
特点:
客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。
灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。
无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。
URL
http://www.aspxfans.com:8080/news/index.asp?boardID=5&ID=24618&page=1#name
一个完整的URL包括以下几部分:
1.协议部分:该URL的协议部分为“http:”,这代表网页使用的是HTTP协议。
2.域名部分:该URL的域名部分为“www.aspxfans.com”。一个URL中,也可以使用IP地址作为域名使用
3.端口部分:跟在域名后面的是端口,域名和端口之间使用“:”作为分隔符。端口不是一个URL必须的部分,如果省略端口部分,将采用默认端口
4.虚拟目录部分:从域名后的第一个“/”开始到最后一个“/”为止,是虚拟目录部分。虚拟目录也不是一个URL必须的部分。本例中的虚拟目录是“/news/”
5.文件名部分:从域名后的最后一个“/”开始到“?”为止,是文件名部分,如果没有“?”,则是从域名后的最后一个“/”开始到“#”为止,是文件部分,如果没有“?”和“#”,那么从域名后的最后一个“/” 开始到结束,都是文件名部分。本例中的文件名是“index.asp”。文件名部分也不是一个URL必须的部分,如果省略该部分,则使用默认的文件名
6.锚部分:从“#”开始到最后,都是锚部分。本例中的锚部分是“name”。锚部分也不是一个URL必须的部分
7.参数部分:从“?”开始到“#”为止之间的部分为参数部分,又称搜索部分、查询部分。本例中的参数部分为“boardID=5&ID=24618&page=1”参数可以允许有多个参数,参数与参数之间用“&”作为分隔符
客户端发送一个HTTP请求到服务器的请求消息包括以下格式:
请求行(request line):请求行,用来说明请求类型,要访问的资源以及所使用的HTTP版本.(包括 方法符号开头 以空格分开 后面跟着请求的URI 协议的版本)
请求头部(header):请求头部,紧接着请求行(即第一行)之后的部分,用来说明服务器要使用的附加信息
空行:必须的
请求数据:请求数据也叫主体,可以添加任意的其他数据。
HTTP响应也由四个部分组成,
状态行:状态行,由HTTP协议版本号, 状态码, 状态消息 三部分组成。
消息报头:消息报头,用来说明客户端要使用的一些附加信息
空:空行,消息报头后面的空行是必须的
响应正文:响应正文,服务器返回给客户端的文本信息。
HTTP状态码
1xx:指示信息--表示请求已接收,继续处理
2xx:成功--表示请求已被成功接收、理解、接受
3xx:重定向--要完成请求必须进行更进一步的操作
4xx:客户端错误--请求有语法错误或请求无法实现
5xx:服务器端错误--服务器未能实现合法的请求
以上是关于2019-5-7的主要内容,如果未能解决你的问题,请参考以下文章