前言
隔离第六天,依然还是健康的一天,没有任何病毒,但是好想出去浪啊,太阳这么大我为什么只能隔着窗子来享受。即使这样也要学习,毕竟面试一个接一个,还要找工作的问题呢。
好了言归正传,昨天收到了一个面试,然后又是一次惨不忍睹的面试,为什么惨不忍睹呢,因为问到了HTTP的一些问题,然后都不会,所以哪里有问题就补哪里。今天整理了一些HTTP的面试问题,给自己增加一些这方面的知识存储。
1、Session和cookie的区别?
答:cookie数据保存在客户端,session数据保存在服务器端。
session是一次会话,cookie可以长期保存在客户端;
session用来保存重要的信息,cookie用来保存不重要的信息;
cookie保存的是字符串,session保存的是对象;
2、Session失效的方式?
答:关闭浏览器;
设置它的失效时间;
调用它的失效方法,setmaxinativeinterval;
3、什么是session?
答:Session是一次会话,随着会话的关闭而结束;
Session四大跟踪技术的一种,是一种服务器端的机制;
主要用在整个请求过程中共享数据;
4、get与post请求的区别?
答:get重点在于从服务器获取数据,post是向服务器发送数据
get传输的数据是放在url中的,post的参数存在于body中
get请求的参数是可见的,post不可见
get会缓存页面的数据,返回页面不会再次发送请求,post不会缓存页面数据
5、常用的HTTP请求方法?
答: GET
POST
PUT
DELETE
HEAD
OPTIONS
6、什么是Http协议无状态协议?怎么解决Http协议无状态协议?
答: 无状态协议对于事务处理没有记忆能力,缺少状态意味着如果后续处理需要前面的信息
无状态协议解决办法: 通过1、Cookie 2、通过Session会话保存
7、谈谈你对restful 规范的理解?
答:restful其实就是一套编写接口的风格,restful规定如何编写以及如何设置返回值、状态码等信息
根据method不同在后端做不同的处理,比如:post 创建数据、get获取数据、put和patch修改数据、delete删除数据。
每一个URI代表一种资源
restful 是客户端和服务器之间,传递这种资源的某种表现层
服务端与客户端进行操作(增删改查)的数据,都是资源
将一切数据视为资源是RESTFUL的特点
8、Restful的实践?
答:版本控制
url命名规范:直接通过GET、POST、PUT、DELETE等这些操作来告诉服务器客户端想要做什么
统一返回数据格式
http状态码:http的状态码是有规定的
9、HTTP请求的过程?
答:域名解析
发起TCP的3次握手
建立TCP连接后发起http请求
服务器相应http请求,浏览器得到html代码
浏览器解析html代码,并请求html代码中的资源(js,css,image)
浏览器对页面进行渲染呈现给用户
10、HTTP请求所经历的几个步骤?
答:建立TCP连接
Web浏览器向Web服务器发送请求命令
Web浏览器发送请求头信息
Web服务器应答
Web服务器发送应答头信息
Web服务器向浏览器发送数据
Web服务器关闭TCP连接