调接口几种方式和跨域
一、Ajax
1、同步 Synchronous
在一个任务进行的过程中,不能开启其他任务
同步访问:浏览器在向服务器发送请求时,浏览器只能等待服务器的响应,不能做其他事。
出现场合:
1、地址栏输入url,访问页面(网速不好时,更明显)
2、a标签跳转
3、表单提交
2、异步 Asynchronous
Ajax是异步访问:在一个任务开启时,可以开启其他任务。
异步访问:浏览器在向服务器发送请求时,用户可以在页面上做其他操作。
出现场合:
1、用户名重复的验证
没有输入,不影响输入登录密码等其它的。
2、聊天室
3、百度搜索建议
4、股票走势
2.1 什么是Ajax
Asynchronous JavaScript and XML:异步的+js+和+xml
本质:
使用js提供的异步对象,
异步的向服务器发送请求,
并接收响应回来的数据
异步对象XMLHttpRequest
2.2 使用ajax
4个步骤:
- 创建异步对象
- 创建请求
- 发送请求
- ajax接收响应数据
2.3 创建异步对象
标准创建模式 var xhr = new XMLHttpRequest();
这种创建方式,不兼容ie8以下的版本
创建成功显示
2.4 使用异步对象打开连接,创建请求
xhr.open(method,url,isAsyn);
method:string类型,请求方式。比如"get"
url:string类型,请求的URL。比如:“http://127.0.0.1:8080/login”
isAsyn:boolean类型,是否用异步访问的方法去访问服务器
2.5 发送请求
xhr.send(formdata)
注意:只有post请求的使用,才能请求主体formdata
get方法不需要请求主体,所以使用get请求的时候,两种发送请求的写法,xhr.send()或者xhr.send(null)