Ajax知识

什么是ajax?ajax作用是什么?

AJAX是在JavaScript中用于提交异步请求并处理响应结果的做法,使用了AJAX后,发出请求、处理响应结果的整个过程,可以对当前页面的显示完全不产生影响。
“局部刷新”是AJAX应用的其中一种表现效果。

ajax常用的几个参数吗 ?

url: 发送请求的地址
type: 请求方式(post或get)默认为get
data:要求为Object或String类型的参数,发送到服务器的数据
dataType: 预期服务器返回的数据类型
success或error:请求成功后调用的回调函数,有两个参数
async: 同步异步请求,默认true所有请求均为异步请求。

原生js ajax请求的几个步骤(实现原理)?

1.创建XMLHttpRequest的对象
2.调用open方法
3.设置回调函数
4.发送数据
5.接受服务器响应数据
若是post请求则在发送数据前,设置set-contentType

什么情况造成跨域?

同源策略限制 不同源会造成跨域。

跨域解决方案有哪些?

1.jsonp 只能解决get跨域

  • 去创建一个script标签
  • script的src属性设置接口地址
  • 接口参数,必须要带一个自定义函数名 要不然后台无法返回数据。
  • 通过定义函数名去接收后台返回数据

2.CORS:跨域资源共享
需要后台设置
Access-Control-Allow-Origin: * //允许所有域名访问,或者
Access-Control-Allow-Origin: http://a.com //只允许所有域名访问

3.设置 document.domain
相同主域名不同子域名下的页面,可以设置document.domain让它们同域

4.用Apache做转发(逆向代理),让跨域变成同域

Ajax的同步和异步

同步请求:
客户端请求(等待)->服务端处理->响应->页面载入
(缺少对象:XMLhttpRequest)
这时候如果有错误,只能再次发送请求,再次等待
异步请求:
比如当你填写邮箱地址的时候,页面当时就把邮箱地址发送到了服务器(也就是页面发送了一个请求),服务器做处理和响应,得到你的邮箱地址填写重复了,把响应结果发给页面,在这个过程中你仍然可以填写其他内容,这时候服务器会提示你有重复的邮箱地址,在页面上的表现只是邮箱地址旁别加了一行字或者把整个文本框标红,并没有重新刷你的页面,所有的填写错误会实时的显示出来,你也会实时的更正。这个过程中,你会有整个页面的刷新,也不会有整个页面的提交和等待,最后提交,一切都会搞定的
总结:页面上的操作和服务器端的操作互相之间不会造成阻塞

×

纯属好玩

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

文章目录
  1. 1. 什么是ajax?ajax作用是什么?
  2. 2. ajax常用的几个参数吗 ?
  3. 3. 原生js ajax请求的几个步骤(实现原理)?
  4. 4. 什么情况造成跨域?
  5. 5. 跨域解决方案有哪些?
  6. 6. Ajax的同步和异步
本站总访问量: , 本页阅读量: