http协议入门

通过对http协议的初步了解,了解到http的工作原理,了解到什么叫请求行状态行和消息头,了解到了缓存机制,了解到了http的传送方式是:ip+端口号这种方式进行传输,默认http的端口号是80,https的端口号为443,模式为请求与相应模式,一问一答的模式。目前网络传输大部分都是http/1.1的版本,与http/1.0相比具有持续连接。

HTTP/1.1的原理是在一个tcp连接上可以传送多个http请求和响应,多个请求和响应过程可以重叠进行,只要是第一次发送请求建立连接,第二次继续发送请求,还是沿用第一次的通道,省去了再连接,不用再三次握手,用旧的通道连接提高了效率,如每一次连接访问服务器那样就会消耗资源。

HTTP协议是应用层协议,主要解决如何包装数据,是基于TCP连接的。而TCP/IP协议是传输层协议,主要解决数据在网路中如何传输的问题,属于网络使用的基本通信协议。TCP协议和IP协议是保证数据完整传输的两个基本的重要协议。通常说TCP/IP是Internet协议族,而不单单是TCP和IP。在讨论传输协议,我觉的这两个对比在一起能更好的理解。

http在实际发生过程中是客户端向服务端发送请求,请求中包括请求协议,方法,请求的信息。通过这些信息,可以分析出发送请求的一些要求,如请求消息中accept参数,它会指定客户端能够接收的内容类型,如accept-languag参数,他指定了可接收的语言等,如connection参数,显示是keep-alive或close,告诉服务器连接方式,这条信息会考虑到影响带宽的因素,参数有好多对应不同请求会有不同的参数,请求信息参数,与相应信息参数是一一对应。在正常的网络传输中如何第一次请求,响应状态码是200 OK,一般是服务器返回客户端的,这条信息只是证明服务器接收到的信息,并返回告诉客户端。而不是告诉我们你发送的请求,我回答了你的相应请求。在第二次发送同样的请求,响应状态码是304,这条状态码不是发送请求没有出现200而出现了问题,而是第一次发送请求中,响应数据已cookie的形式保存在本地的文件当中,当客户端第二次发送同样的请求时,本地的cookie会把上一次保存在cookie中的信息,返还发送给客户端减少主机对服务器访问同样的请求而产生的一种缓存机制,这种缓存机制减少对服务器的访问量,提高服务器的性能,针对于哪些没有缓存的请求,提高他们的访问效率与速度。

在服务器响应的信息中,包括响应的状态码,每个状态码都代表一个具体的含义,我们可以根据他的响应状态码来分析,来分析服务器处理请求之后发生的问题,是请求成功200 ok,还是404服务器上不存在客户机所请求的资源,通过这些状态码来分析产生的问题,能很好的定位问题,方便我们去发现问题。

这里在说一下,缓存(cache)服务器在响应信息中用set-cookie头的内容回送给客户端,客户端在新的请求中将相同的内容携带在cookie头中发送给服务器。从而实现会话的保持。服务器收到请求时,客户端将该资源保存在cache中,并记录这两个属性。当需要发送相同的请求时,会在请求中携带if-Modified-since和if-None-Match两个头。两个头的值分别是相应中Last-Modified和ETag头的值。未发生变化,客户端不需要重新下载,返回304响应码。

                                                                                                                                          2017年08月26日

你可能感兴趣的:(http协议入门)