关于我认识的请求方式

简介: 关于我认识的请求方式有三个

Ajax异步请求:

AJAX可以在不更新全局的情况下更新局部页面。通过在与服务器进行数据交换,可以使网页实现异步更新。


AJAX的原理就是通过XHR对象来向服务器发起异步请求,从服务器获得数据,然后用JS来操作DOM更新页面。领导想找小李汇报一下工作,就委托秘书去叫小李,自己就接着做其他事情,直到秘书告诉他小李已经到了,最后小李跟领导汇报工作。Ajax请求数据流程与“领导想找小李汇报一下工作”类似,上述秘书就相当于XMLHttpRequest对象,领导相当于浏览器,响应数据相当于小李。浏览器可以发送HTTP请求后,接着做其他事情,等收到XHR返回来的数据再进行操作。


AJAX的缺点:

  • 本是针对MVC架构,不符合前端MVVM的浪潮
  • 基于原生的XHR开发
  • 配置和调用方式混乱

fetch:

可以在浏览器直接使用获取请求(native code:原生),不需要额外写代码,没有进行二次转换


缺点:

  • 过于底层,有很多状态码没有进行封装
  • 无法阻断请求
  • 兼容性差
  • 无法检测请求进度

axios:

第三方类库(Library类库),需要安装、引入,才能使用。封装好的,有三个层级。


axios是基于Promise对XHR进行封装,它内部封装了两个拦截器,分别是请求拦截器和响应拦截器。


请求拦截器:用于在请求发出之前进行一些操作,比如:设置请求体,携带Cookie、token等;


响应拦截器:用于在得到响应后进行一些操作,比如:登录失效后跳转到登录页面重新登录。


axios有get、post、put、patch、delete等方法。


特点:

axios可以对请求和响应进行监听;

返回Promise对象,可以使用Promise的API;

返回JSON格式的数据;

由浏览器发起请求;

安全性更高,可以抵御CSRF攻击。

项目最终会选用axios


相关文章
|
6月前
|
存储 前端开发 安全
GET 和 POST 请求:理解它们之间的区别和适用场景
GET 和 POST 请求:理解它们之间的区别和适用场景
|
Java 测试技术 API
【SpringMVC】参数传递与用户请求和响应(上)
【SpringMVC】参数传递与用户请求和响应(上)
75 0
|
12天前
|
缓存 安全 API
GET 请求和 POST 请求的安全性有何区别?
【10月更文挑战第29天】GET请求和POST请求在安全性方面各有特点和风险。在实际应用中,应根据具体的业务场景和安全需求,合理选择使用GET请求或POST请求,并采取相应的安全措施来保障系统的安全性,如对敏感信息进行加密、实施访问控制、防范CSRF攻击等。
|
6月前
|
JSON 中间件 数据格式
在自定义服务器框架中处理 POST 请求
在自定义服务器框架中处理 POST 请求
在自定义服务器框架中处理 GET 请求
在自定义服务器框架中处理 GET 请求
|
6月前
|
缓存 安全
控制浏览器发送请求采用请求方式的详细介绍
本文讲述了HTTP请求的GET和POST两种主要方式。GET请求限制参数不超过4K,参数显示在地址栏并缓存资源;POST请求能携带任意数量参数,参数隐藏在请求体,不保存资源。GET常用于超链接和表单默认提交,POST适用于文件上传、登录验证和获取实时数据等场景,因安全考虑,部分网站仅接受GET请求。可通过表单的method属性设置请求方式,默认为GET。
101 0
|
小程序
小程序接口请求配置
小程序接口请求配置
172 0
|
JSON NoSQL 安全
后端如何优雅地处理重复请求/并发请求?
后端如何优雅地处理重复请求/并发请求?
320 0
|
JSON 前端开发 Java
【SpringMVC】参数传递与用户请求和响应(下)
【SpringMVC】参数传递与用户请求和响应(下)
73 0
|
JSON 前端开发 网络架构
DRF--请求和响应
DRF--请求和响应