前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在浏览器地址栏键入URL,按下回车之后经历的流程/常见状态码/get请求和post请求的区别/Cookie和Session的区别

在浏览器地址栏键入URL,按下回车之后经历的流程/常见状态码/get请求和post请求的区别/Cookie和Session的区别

作者头像
名字是乱打的
发布2022-05-13 12:15:20
8530
发布2022-05-13 12:15:20
举报
文章被收录于专栏:软件工程
面试常问一 在浏览器地址栏键入URL,按下回车之后经历的流程:
  • DNS解析(域名解析:域名到IP地址的转换过程):浏览器会根据URL逐层查询DNS服务器缓存解析URL中的域名所对应的IP地址(DNS缓存从今到远依次是浏览器缓存,系统缓存,路由器缓存,IPS服务器缓存,根域名服务器缓存,顶级域名服务器缓存,从哪个缓存查找到对应IP则直接返回不再查找后面的缓存
  • TCP连接 (找到IP地址和对应端口后与服务器建立TCP连接)(三次握手)
  • 浏览器发送HTTP请求
  • 服务器对浏览器请求做出响应并把对应带有html文本的HTTP响应报文发送给浏览器
  • 浏览器收到html并在浏览器解析进行渲染页面
  • 浏览器释放TCP连接(四次挥手) (最后一步和倒数第二步可以同时发生,哪一步在前没有要求)
面试常问二 HTTP常见状态码

(状态码由三位数字构成第一位表示状态码类型)

  • 五种可能的取值类型
  • 1xx:指示信息--表示请求已接收,继续处理
  • 2xx:成功--表示请求已被成功接收、理解、接受
  • 3xx:重定向--要完成请求必须进行更进一步的操作
  • 4xx:客户端错误--请求有语法错误或请求无法实现
  • 5xx:服务器端错误--服务器未能实现合法的请求

常见状态码 2000K:正常返回信息 301 永久重定向,302 临时重定向 400 Bad Request:客户端请求有语法错误,不能被服务器所理解 401 Unauthorized:请求未经授权,这个状态代码必须和WWW-Authenticate 报头域一起使用 403 Forbidden:服务器收到请求,但是拒绝提供服务eg:比如IP被禁了 404Not Found:请求资源不存在,eg,输入了错误的URL 500Internal Server Error:服务器发生不可预期的错误 503 Server Unavailable:服务器当前不能处理客户端的请求,一段时间后可能恢复正常 521 :爬虫自己遇到的没有携带js执行返回的cookie

面试常问三 get请求和post请求的区别

从三个层面回答

  • Http报文层面:GET将请求信息放在URL,POST放在报文体中
  • 数据库层面: GET符合幂等性(幂等性:对数据库的一次操作和多次操作的结果是一致的)和安全性(安全性:对数据的操作没有改变数据库的数据)      (这时因为Get请求一般是做查询操作的) POST不符合幂等性和安全性(POST一般是作用在上一级url上的,每次请求都会添加一份新资源,因此不符合幂等)(POST一般是往数据提交数据改变数据库,不符合安全性)
  • 其他层面: Get请求携带参数有限,POST可以携带更多数据; GET可以被缓存、被存储(会保存在浏览器的浏览记录中,url可以保存为浏览器书签),而POST不行
面试常问四 Cookie和Session的区别

HTTP本身是无连接的,正常我们每次请求数据都要重新建立携带数据连接(如登录),但是这样相当麻烦,因此我们引入了某些机制让HTTP具备状态,其中两个便是cookie,session.

Cookie简介
  • Cookie是客户端的解决方案
  • 是由服务器发给客户端的特殊信息,以文本的形式存放在客户端
  • 客户端再次请求的时候,会把Cookie回发
  • 服务器接收到后,会解析Cookie生成与客户端相对应的内容
Session简介
  • Session是服务端的机制,服务器使用一种类似于散列表的结构在服务器保存信息。
  • 解析客户端请求并操作session id,按需保存状态信息 当程序需要为某个客户端请求创建session,首先检查客户端请求李是否已经包含一个session id,如果已经包含则说明以前已经为这个客户端创建了一个session,服务器就按照这个session id从服务器把这个session检索出来使用.如果不包含session id,则为这个客户端创建一个session并生成session id,并把这个session id发送回客户端进行保存
Cookie和Session的区别
  • Cookie数据存放在客户的浏览器上,Session数据放在服务器上
  • Session相对于Cookie更安全
  • 若考虑减轻服务器负担,应当使用Cookie
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 面试常问一 在浏览器地址栏键入URL,按下回车之后经历的流程:
  • 面试常问二 HTTP常见状态码
  • 面试常问三 get请求和post请求的区别
  • 面试常问四 Cookie和Session的区别
  • Cookie简介
  • Session简介
    • Cookie和Session的区别
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档