时间:2020/4/21
前言:对HTTP的了解、对cookie和session的了解、response和request对象的了解
一、对HTTP的了解
1概述:HTTP(超文本传输协议Hypertext transfer protocol)。超文本:不仅传输文字,还传输图片、音频、超链接;传输:请求方把传输数据包发给应答方;协议:网络传递的规范
2网络模型:物理层、链路层、网络层、传输层、应用层
应用层:HTTP、电子邮件传输协议SMTP、端系统文件上传协议FTP、域名解析协议DNS
运输层:TCP协议、UDP协议
网络层:IP协议
链路层:
物理层
各大邮箱使用电子邮件传输协议,浏览器是使用HTTP协议的主要载体。
我们在地址栏输入URL,浏览器就向域名服务器提供网址(完成URL到IT地址的映射),在有服务器返回结果(HTML编码格式),浏览器执行HTML编码。
Web服务器、内容分发系统CDN
Web应用程序防护系统(web application firewall)是应用层面的防火墙
3HTTPS(hyper text transfer protocol over securesocket layer):HTTPS是以安全为目标的HTTP通道,在HTTP基础上通过传输加密和身份认证保证传输过程的安全性,在HTTP的基础上增加了SSL层。
4HTTP报文:起始行(描述请求或响应的基本信息)、头部字段(使用key-value形式更详细地说明报文;消息正文(实际传输数据,纯文本或二进制数据)
5HTTP请求方法:8种
GET获取资源
POST传输实体
PUT传输文件
HEAD获得响应首部
DELETE删除文件
OPTIONS询问支持的方式
TRACE追踪路径
CONNECT要求用隧道协议连接代理。
6HTTP请求URL:
协议、主机、端口、路径、查询、片段。
7响应状态码:200(请求成功)、404(请求资源不存在)、500(内部服务器错误)
8HTTP优缺点
优点:简单、灵活、易于扩展;应用广泛、环境成熟;无状态
缺点:无状态
明文:协议中的报文不使用二进制数据,而是文本形式。用wireshark抓包,直接用肉眼查看和修改,方便调试。但是不安全,无法判断通信双方的身份。
二、对cookie和session的了解
1cookie是客户端技术,服务端把数据以cookie的形式写给用户各自的浏览器。服务服务器时,就会带着各自的数据去。
Session是服务器端技术,服务器在运行时可以为每一个用户的浏览器创建一个其独享的session对象。
2cookie类用于创建一个cookie;response通过addCookie方法在其响应头中增加一个相应的setcookie头字段;request通过getCookie方法获得客户端提交的cookie;
默认情况下cookie存储在浏览器的内存中,退出即被删除,若希望浏览器将cookie存储在磁盘,则需要使用maxAge,并给一个以秒为单位的时间。
应用:浏览过的店铺
3session:当用户打开浏览器访问某个网站时,服务器就会在服务器内存为该浏览器分配一个session空间,由这个浏览器独占,默认保持时间是30min;
应用:购物车、登录用户的信息;
4session与cookie的主要区别是:cookie是把用户的数据写给用户的浏览器;session是把用户的数据写到用户独占的session中;
Session对象由服务器创建,开发人员可以调用request对象的getSession方法得到session对象。
三、response和request对象
1HTTP交互:浏览器与web服务器之间的HTTP请求和HTTP响应。服务器内部的request(读用户的输入信息)和response(向用户输出信息)
2HTTPServletResponse对象封装了向客户端发送数据、响应头、响应状态码的方法,用于响应服务器。
请求重定向:一个web资源收到客户端请求后,通知客户端去访问另一个web资源。可以用response实现。
3HTTPServletRequest对象用于请求服务器;
请求转发:一个web资源收到客户端请求后,通知服务器去调用另外一个web资源进行处理。可以用request实现。应用场景有MVC设计模式。
标签:session,HTTP,请求,--,基础知识,wsdchong,cookie,服务器,浏览器 From: https://blog.51cto.com/u_15847108/5797523