首页 > 代码库 > HTTP简介

HTTP简介

HTML(Hyper Text Markup language),超文本标记语言

样式CSS,一般存储在样式表中

CSS样式,一般分为三种:内嵌样式、外部样式、行内样式三种。

其中p #green{color:green}表示只有p标签id为green的才有效

 

HTTP(Hyper Text Transfer Protocol)超文本传输协议,绝大多数的web开发都是建立在HTTP协议之上的web应用。

HTTP是应用层协议,当你在网上浏览网页的时,浏览器和服务器之间就会通过http协议在Internet上进行数据的发送和接受。

HTTP是一种基于请求/相应模式的无状态协议。

当你输入一个网址(输入的是域名,默认端口号为80)时,DNS服务器会将此域名解析成对应的IP地址,然后通过路由器找到对应的IP。用于连接服务器。

HTTP 1.0是无连接请求响应,当你发送一个请求时,需要建立一个连接,服务器接收请求并给予响应,这个过程即结束。当第二次请求发送过来时,需要重新建立连接,给予响应。

HTTP 1.1给出了一个持续连接机制,并将其作为HTTP1.1中建立连接的缺省值(默认为持续连接)。可以通过例1.1的例子进行详细的测试。

URL:统一资源定位符

abs_path:统一资源标示符。

域名格式:http://host[:post][abs_path]

小插曲:URL与URI不同之处

  URI纯粹是一个符号结构,用于指定构造WEB资源的字符串的各个不同部位,

  URL是一种特殊类型的URI,包括用于查找某一个资源的足够信息。

HTTP请求包括:请求行、消息报头、请求正文三部分组成

HTTP的八大请求方式:GET、POST、HEAD、DELETE、CONNECT、PUT、TRACE、OPTIONS。

其中当我们在地址栏中输入一个网址时,浏览器采用的是GET方式向服务器发送HTTP请求的。

POST:要求服务器接受附在请求后的数据。

HEAD:head和get请求方式几乎相同,区别在于head请求方式请求的只是请求消息报头,而不是完整的内容

HTTP消息:请求+响应

常见的错误:

404:请求资源不存在

500:服务器内部发生了不可预期的错误,导致无法完成客户请求

503:服务器不能处理客户发来的请求,在过一段时间后,服务器可能恢复正常

例1.1(通过Telnet查看HTTP请求过程)

首先是将telnet服务打开。因为win7系统自带的有telnet程序,所以没有必要再去安装,只是将其开启即可。

开启步骤:在控制面板--》卸载程序--》打开或关闭windows功能--》telnet服务器端和telnet客户端(打上对勾)。确定即可。

然后在运行中输入:services.msc打开服务,将telnet服务开启即可。

测试步骤:开启之后,我们打开doc窗口,在里面我们需要运行telnet远程服务。

具体步骤:在doc窗口中输入:

telnet www.baidu.com 80

敲回车,通过telnet模式连接到baidu服务器

然后将

HEAD /index.html HTTP/1.1
HOST:www.baidu.com

内容复制进去,敲两次回车,显示请求头信息。

完工。。。

 

GET与POST的区别:

理解:从HRRP协议的请求方式上面区分,

get方式请求为GET /Test/login?username=user&password=world HTTP/1.1(在地址栏中显示请求信息,作为请求URL的一部分)

而POST的请求方式为: POST /Test/login(在两个回车后,再附加请求过来的信息,所以在地址栏中不显示请求信息,而是将请求信息作为请求体的一部分)。所以这是GET和POST的本质区别。

总结:1.浏览器地址栏上面呈现的结果不同(表象)

2.真正原因是在于向服务器端发送的请求方式不同引起的

3.GET的请求方式为:GET /Test/login?username=user&password=world HTTP/1.1(在地址栏中显示请求信息,作为请求URL的一部分)

4.POST的请求方式为:POST /Test/login(在两个回车后,再附加请求过来的信息,所以在地址栏中不显示请求信息,而是将请求信息作为请求体的一部分)

所以 所以在用浏览器进行文件上传时,一定要用post方式而不能使用get方式,因为URL的传输长度是有限制的、