什么是 ajax?----异步 javascript 和 xml

GET 用于请求服务器数据

POST 用于上传数据到服务器,或者修改服务器数据

 

ajax

异步通信,实现页面的局部刷新,按需获取数据,节约带宽,带来更好的用户体验

客户端与服务器在不必刷新浏览器的情况下,与服务器进行异步通讯的技术

与后台进行 HTTP 通信,无需刷新整体页面, 而只是根据自己的需求做局部页面的更新

原生语法的,promise 风格的 ____多一次 .then()

优点

页面无需刷新,用户体验好

异步通信方式,响应迅速

按需取数据,减轻服务器的压力

缺点

不支持 back 回退

对搜索引擎支持较弱

跨域: 当前地址 与 请求地址 不同 ---- 协议、域名、端口号

浏览器处于安全考虑的同源政策,不允许发送跨越的 ajax 请求

解决 ajax 跨域:

  • jsonp 只能解决GET请求跨域
  • cors 可以解决 GET/POST
  • 代理: 在开发环境下使用比较多。

在生产环境下用 Apache 做转发(代理)也可以实现

区别ajax请求和普通的HTTP请求?

相同点: 都是向服务器提交的http请求

不同点:

普通的 HTTP 请求

得到页面

服务器端渲染数据,自动刷新页面

多页应用

ajax 请求

得到 json 数据

不会自动刷新页面,需要手动处理数据,浏览器渲染数据

单页面应用 SPA

如何发送ajax请求?

XMLHttpRequest

jquery

axios

fetch

 

只能解决GET请求跨域

posted @ 2019-03-02 16:24  耶梦加德  阅读(295)  评论(0编辑  收藏  举报