HTTP面试题

GET 和POST的区别有哪些

区别一:幂等性
1.由于GET是读,POST是写,所以GET是幂等的,POST不是幂等的。
2.由于GET是读,POST是写,所以用浏览器打开网页会发送GET请求,想要POST 打开网页要用form 标签。
3.由于GET是读,POST是写,所以GET打开的页面刷新是无害的,POST打开的页面刷新需要确认
4.由于GET是读,POST是写,所以GET结果会被缓存,POST结果不会被缓存,
5.由于GET是读,POST是写,所以GET打开的页面可被签收藏,POST打开的不行

区别一:请求参数
1.通常,GET请求参数放在url里,POST请求数据在body(消息体)里
2.GET 比 POST更不安全,因为参数直接暴露在URL上,所以不能来传递敏感信息
3.GET 请求参数在url里是有长度限制的,而POST放在body里没有长度限制
区别三:TCP packet

  1. GET 产生一个TCP 数据包,POST 产生两个或以上TCP数据包
    !!根据技术规格文档,GET和POST最大的区别是语义,但面试官一般问的是实践过程中二者的区别,因此你需要了解服务器和浏览器对GET和POST的常见实现方法

HTTP缓存有哪些方案

HTTP 1.1

缓存(强缓存): Cache-Control:max-age=3600
(自动缓存1小时,一个小时之内,如果有人再次访问同样的URL,同样的路径,同样的查询参数,就直接不发请求 )
Etag:ABC
文件的特征值
使用特征值 来查询
内容协商(弱缓存):if-None-Match:ABC 响应状态码 :304表示不需要删除缓存
或200 删除 一般会附带一个body 最新的JS内容
强缓存就是问都不问 遇到请求就直接用,除非文件被删除
弱缓存就是强缓存过期后,这个缓存要不要留着 ,协商下原特征值和最新文件特征值一样就留着(304),不一样就删除

HTTP 1.0

缓存(强缓存): Expires:Wed,21Oct 2015 02:30:00 GMT (缺点 用户时间错乱)
Last-Modified:Wed,21 Oct 2015 01:00:00 GMT(一个文件一秒修改多次,无法区分是否最新)
内容协商(弱缓存): If-Modified-Since:Wed,21 Oct 2015 01:00:00 GMT GMT
响应状态码: 304 或200
根据本地时间告诉缓存是否失效
根据更新时间来判定是否删除缓存 要删除返200 不要返304、

pragma MDN已经明确不推荐使用它

HTTP 和HTTPS的区别有哪些?

HTTPS = HTTP+SSL/TLS(安全层)
区别列表
1.HTTP是明文传输的,不安全;HTTPS是加密传输的 。非常安全。
2.HTTP使用80端口,HTTPS使用443端口
3.HTTP较快,HTTPS较慢
4.HTTPS的证书一般需要购买(但是也有免费的),HTTP不需要证书。

TCP三次握手和四次挥手是什么?

建立TCP 连接时server 鱼client 会经历三次握手
1.浏览器向服务器发送TCP数据:SYN(seq=x)
2.服务器向浏览器发送TCP数据:ACK(seq=x+1)SYN(y)
3.浏览器向服务器发送TCP数据:ACK(seq=y+1)

关闭TCP 连接时server 鱼client 会经历四次挥手
1.浏览器向服务器发送TCP数据:FIN(seq=x)
2.服务器向浏览器发送TCP数据:ACK(seq=x+1)
3.服务器向浏览器发送TCP数据:FIN(seq=y)
4.浏览器向服务器发送TCP数据:ACK(seq=y+1)
为什么2,3 步骤不合并起来
答:2,3 中间服务器很可能还有数据要发送,不能提前发送FIN

说说同源

同源策略是什么?
如果两个URL的协议,端口和域名都完全一致的话,则这两个URL是同源的
同源策略怎么做?
只能在浏览器里打开页面,就默认遵守同源策略。
有点
保证用户的隐私安全和数据安全
缺点
很多时候,前端需要访问另外一个域名的后端接口,会被浏览器阻止其获取响应。
比如甲站点通过AJAX访问已站点的/money查询余额接口,请求贵发出,但是响应会被浏览器屏蔽。

怎么解决缺点?
使用跨域手段。

  1. JSONP(前端体系课有完整且详细的介绍)
    a. 甲站点利用script 标签可以跨域的特性,向乙站点发送get请求
    b.乙站点后端改造JS文件的内容,将数据传进回调函数
    c.甲站点通过回调函数拿到乙站点的数据
    2.CPRS(前端体系课有完整且详细的介绍)
    a. 对于简单请求,乙站点在响应里添加 xxx 即可
    b. 对于复杂请求,如PATCH,乙站点需要:
    i:响应OPTIONS请求,在响应中添加如下的响应头
    c. 如果需要附带身份信息,JS中需要在AJAX里设置

Session,Cookie,LocaIStorage.SessionStorage的区别
*Cookie V.S.LocalStorage
1.主要区别是Cookie 会被发送到服务器,而LocalStorage不会
2.Cookie 一般最大4k,LocaIStorage 可以用5Mb甚至10Mb(各种浏览器不同)

2.Cookie 一般最大4k,LocaIStorage 一般不会自动过期(除非用户手动清除)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 230,578评论 6 544
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 99,701评论 3 429
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 178,691评论 0 383
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 63,974评论 1 318
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 72,694评论 6 413
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 56,026评论 1 329
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 44,015评论 3 450
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 43,193评论 0 290
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 49,719评论 1 336
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 41,442评论 3 360
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 43,668评论 1 374
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 39,151评论 5 365
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 44,846评论 3 351
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 35,255评论 0 28
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 36,592评论 1 295
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 52,394评论 3 400
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 48,635评论 2 380

推荐阅读更多精彩内容

  • HTTP 与 HTTPS 的区别 http:超文本传输协议,设计目的是为了提供一种发布和接收 HTML 页面的方法...
    为光pig阅读 348评论 0 1
  • 极客时间课程Web协议详解与抓包实战 get post 的区别 关于安全性我们常听到GET不如POST安全,因为P...
    普莱那阅读 471评论 0 0
  • Http与Https的区别? HTTP 的URL 以http:// 开头,而HTTPS 的URL 以https:/...
    Austin_Brant阅读 5,969评论 0 3
  • HTTP常见面试题 Http与Https的区别: Http与Https的区别: HTTP 的URL 以http:/...
    Java3y阅读 4,740评论 0 36
  • http、html和浏览器篇 1.http和https https的SSL加密是在传输层实现的。 (1)http和...
    刘松阳阅读 233评论 0 0