面试题:浏览器HTTP概念及对前端的影响

一. 什么是HTTP

HTTP(Hyper Text Transfer Protocol),翻译成中文就是超文本传输协议,最开始用于规范发布和接受HTML页面的方法。

HTTP是一个客户端和服务端请求和响应的标准:用户通过浏览器、爬虫等客户端代理工具来向服务器发送HTTP请求,请求数据,服务器将存储的资源返回给用户。

二. HTTP版本

目前HTTP最广泛的版本是HTTP1.1,增加了put、delete等请求方法

HTTP请求方法现在大体有:

  1. get:常用于获取数据
  2. post:将实体提交到指定资源
  3. put:一般用于替换、更新
  4. delete:删除指定资源
  5. head:和get相似,但是请求的是元数据

三. HTTP组成

一个完整的HTTP请求都会有请求Request和响应Response。

最常用的请求头中的属性:

  1. content-type:
    1. application/x-www-form-urlencoded:默认值,数据编码被&分隔的键值对,用=连接键值
    2. application/json:表示一个json类型
    3. text/plain:文本类型
    4. application/xml:xml类型
    5. multipart.form-data:上传文件
  2. content-length:文件大小长度
  3. keep-alive:默认connection:keep-alive
  4. accept-encoding:告知服务器,客户端支持的文件压缩格式,比如js可以用gzip编码
  5. user-agent:客户端相关信息
  6. cookie:携带cookie数据

最常用响应信息

HTTP状态码:
200:OK
201:POST创建新资源
301:请求资源URL已经更改,响应中需要给出新URL
400:bad request 客户端请求出了问题
401:未授权,没登录信息
403:登录的权限不够,被拒绝
404:not found 服务器找不到对应url
500:服务器响应问题
503:服务器挂了

四:番外篇

最开始时有一种渲染方式叫SSR(serve side render),翻译成中文就是服务端渲染,完全由服务器返回HTML文件,交给浏览器解析。这么做有很大的缺点,就是我只改动一个数据,那么就需要全体重新请求,对服务器压力很大。

后来出现了ajax,这就促成了前后端分离,前端处理页面逻辑,后端来专心处理数据,每次想修改,只需要前端向后端请求需要的数据,然后前端动态更新对应的页面,不用刷新页面。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值