网络通信面试知识点总结:

 

1.一个Http请求的流程:

        DNS域名解析 –> 发起TCP的三次握手 –> 建立TCP连接后发起http请求 –> 服务器响应http请求,浏览器得到html代码 –> 浏览器解析html代码,并请求html代码中的资源(如javascript、css、图片等) –> 浏览器对页面进行渲染呈现给用户

--->在浏览器中输入www.baidu.com后执行的全部过程:

(1) 浏览器获取输入的域名www.baidu.com

(2) 浏览器向DNS请求解析www.baidu.com的IP地址

(3) 域名系统DNS解析出百度服务器的IP地址

(4) 浏览器与该服务器建立TCP连接(默认端口号80)

(5) 浏览器发出HTTP请求,请求百度首页

(6) 服务器通过HTTP响应把首页文件发送给浏览器

(7) TCP连接释放

(8) 浏览器将首页文件进行解析,并将Web页显示给用户。

 

涉及到的协议:

(1) 应用层:HTTP、DNS

(2) 传输层:TCP、UDP

(3)网络层:IP(IP数据数据包传输和路由选择),ICMP(提供网络传输过程中的差错检测),ARP(将本机的默认网关IP地址映射成物理MAC地址)

 

2.Session和Cookie的原理和区别

     参考:https://www.xuebuyuan.com/3238971.html

        Cookie,是指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密)。由服务端生成的,发送给客户端(通常是浏览器)的。Cookie总是保存在客户端中。

        Session代表服务器与浏览器的一次会话过程,这个过程是连续的,也可以时断时续的。Session是一种服务器端的机制,Session 对象用来存储特定用户会话所需的信息。由服务端生成,保存在服务器的内存、缓存、硬盘或数据库中。

 

区别:

 1、session保存在服务器,客户端不知道其中的信息;cookie保存在客户端,服务器能够知道其中的信息。  

  2、session中保存的是对象,cookie中保存的是字符串。     

  3、session不能区分路径,同一个用户在访问一个网站期间,所有的session在任何一个地方都可以访问到。而cookie中如果设置了路径参数,那么同一个网站中不同路径下的cookie互相是访问不到的。

 

        如果客户端禁用cookie,会使用URL重写技术进行会话跟踪;同一用户从同一系统中同时打开多个相同的页面,会共享session,如果修改,会覆盖。

        浏览器第一次请求服务器时,服务器会生成一个sessionId,并返回给浏览器,这个sessionId会被保存在浏览器的会话cookie中。在浏览器不关闭的情况下,之后的每次请求请求头都会携带这个sessionId到服务器。session在服务器的默认有效时间是30分钟,可以通过3种方式去设置session的过期时间。当sessionid 过期,服务器会生成一个新的sessionId返回给浏览器,并替换掉cookie中之前的sessionId,浏览器再次请求,cookie就会携带新的sessionId到服务器。通过sessionId我们可以做登陆过期,会话期间无需二次登陆等功能。

 

3.HTTP状态码:

     消息(1字头):指定客户端应相应的某些动作,代表请求已被接受,需要继续处理。

      成功(2字头):200状态码:表示请求已成功,请求所希望的响应头或数据体将随此响应返回;201状态码:表示请求成功并且服务器创建了新的资源,且其 URI 已经随Location 头信息返回;202状态码:服务器已接受请求,但尚未处理

      重定向(3字头):301状态码:被请求的资源已永久移动到新位置。服务器返回此响应时,会自动将请求者转到新位置;302状态码:请求的资源临时从不同的URI响应请求,但请求者应继续使用原有位置来进行以后的请求;304:自从上次请求后,请求的网页未修改过。服务器返回此响应时,不会返回网页内容。

    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值