码迷,mamicode.com
首页 > Web开发 > 详细

http简介

时间:2018-05-26 17:56:29      阅读:232      评论:0      收藏:0      [点我收藏+]

标签:web   bsp   语言   模式   下载   产生   spring   命名   拼接   

XAMPP+Agileone

安装XAMPP,默认安装,有一个端口占用检测工具。

HTTP:超文本传输协议。HTML:超文本标记语言。

HTTP是明文传输的,安全性差,所以银行系统要下载插件进行加密。是无状态协议,HTTP1.1版本。

HTTPWatch:http分析工具。Professional Edition。以浏览器插件形式安装。点击录制按钮,所有请求就会被录制下来。

1XX,2XX,3XX表示请求和服务端是成功的。4XX表示客户端请求有问题。5XX表示服务端有问题。

请求类型:GET,POST。
一个html页面和图片都有一个唯一的定位地址(uri)。
POST用文件上传,表单提交,
请求:
Host: www.baidu.com
Accept: */*  :接收所有类型
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36    :客户端版本
Accept-Encoding: gzip, deflate, br  :可以处理的标准压缩,文本内容在传输的过程中是压缩了在传输的。压缩是服务器端进行的,浏览器还需要解压。
Connection: keep-alive  :网络传输需要建立tcp连接,3次握手,资源消耗很多。下次请求相同的资源或者url就重用。保持一段时间,不是立即销毁。比如连续使用了100次或者建立了多长时间了,可以重新建立了。
Cookie:  BIDUPSID=6A597EEC2F358DB1EDD8D9A526587B44; PSTM=1521630943; BAIDUID=5CA2E41A7C44264A6BCDEEAC093884C3:FG=1; BD_UPN=12314753;BDRCVFR[feWj1Vr5u3D]=I67x6TjHwwYf0; 
Cookie是浏览器发送给服务器的内容,里面的内容是由浏览器决定的。
X-requested-with:XMLHttpRequest :ajax发送
Referer:  https://www.baidu.com/s?wd=tomcat%20%20spring%20  :哪个页面发送的这个请求,收集用户的来访记录。没有Referer说明是直接地址访问,比较忠诚的。
响应:
Content-Type: text/html;charset=utf-8  :告诉浏览器返回的是一个什么资源。数据传输的二进制的,都是通过类型来还原的。
Transfer-Encoding: chunked  :一次性传不完,分段传,浏览器会拼接到一起。就没有长度的字段了,有长度字段的时候客户端会根据长度读取完数据,然后等待下一个响应。
Connection: Keep-Alive
Cache-Control: private :no-cache不需要缓存,每次重新加载页面。private第一次重新加载,后面从缓存读取。
Expires: Thu, 18 May 2028 01:06:25 GMT :缓存的过期时间。缓存是本地硬盘保存了页面。很多缓存在内存,浏览器缓存在硬盘里面。
Content-Encoding:gzip  :压缩格式
X-Ua-Compatible: IE=Edge,chrome=1  :兼容模式
自定义的字段:浏览器的cookie再发给服务器用。
Cookie是服务端生成,保存在客户端
Set-Cookie: BD_CK_SAM=1;path=/
Set-Cookie: H_PS_PSSID=1469_21104_26350_22072; path=/; domain=.baidu.com
Set-Cookie: BDSVRTM=24; path=/
Set-Cookie: PSINO=6; domain=.baidu.com; path=/
Keep-Alive: timeout=5,max=100 : 5秒之后或者连接使用了100次,就会去新建一个连接
Session:
set-cookie: SERVERID=34e1ee01aa40e94e2474dffd938824db|1527087303|1527082184;Path=/
SERVERID唯一标识一个客户端,服务器生成一个唯一的编号,服务端维护一个文件,一列是id号。

技术分享图片

服务端分配一个sessionid给客户端的时候,服务端同时生成一个以sessionid命名的文件。

文件打开:

技术分享图片

技术分享图片

isLogin=true,就表示已经登录了。
超大型系统会产生十几万个这样的文件。一个目录放几十万个文件,寻址非常慢。超大型系统不推荐这种方式。
这些文件保存在内存里面,不在硬盘中。存在内存型的数据库。

Cookie:
是否保存登录信息。
浏览器读取cookie,携带账号,服务器验证cookie。退出的时候,把cookie和session全部清空。
Cookie文件:

技术分享图片

Cookie的安全性的问题:直接关闭浏览器不是注销,那么cookie会保存在客户端,注销清除cookie可以防止cookie泄露。

浏览器自带读取cookie文件的功能。只需要加入到cookie就可以了自动登录了。

 

Fiddler抓包工具。

ConnectTimeout:连接的超时时间。

ReadTimeout:请求出去以后,获取到响应的时间。

技术分享图片

getHeaderField(“set-cookie”)  //获取服务端多条cookie

 

//把服务端获取的cookie再次加入request中发送给服务端

SetRequestProperty(“cookie”,”username=admin;password=admin”)

http简介

标签:web   bsp   语言   模式   下载   产生   spring   命名   拼接   

原文地址:https://www.cnblogs.com/yaowen/p/9093645.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!