ajax

46 阅读1分钟

1、概念: 同步交互:用户向服务器端发起请求,直到服务器端进行响应的全过程,用户是不可以做其他事情的(等) 典型:网址提交、表单提交 - 都是属于同步交互

异步交互:用户向服务器端发起请求,直到服务器端进行响应的全过程,用户是可以做其他事情的(不等)
	典型:ajax请求

*****Ajax:Asynchronous JavaScript And XML - 异步的JavaScript和XML
不严格的定义:页面不完全刷新,只会导致页面局部发生变化的技术
其实我们早就见过异步技术/代码了:
	1、定时器 - 做特效
	2、Node操作mongo的增删改查 - 后端交互数据库的
	3、ajax - 目的:在不刷新页面的情况下和服务器端进行交互 - 可以将服务器端的数据放到前端(比较验证,数据渲染)

2、如何使用:固定步骤4步: 1、创建ajax核心对象: var xhr=new XMLHttpRequest();

2、建立和 服务器 的连接
	xhr.open("GET/POST","路由");

3、向服务器端发送请求消息:
	xhr.send();//但是此方法很特殊

	特殊:
		1、GET:send方法会失效,但是还不能省略,必须写为:
			xhr.open("GET","路由?name=value&...");
			xhr.send(null);

		2、POST:send方法可用,必须写为:- 暂时不用
			xhr.open("POST","路由");
			xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
			xhr.send("name=value&...");

4、绑定状态监听事件
	xhr.onreadystatechange=()=>{
		if(xhr.readyState==4&&xhr.status==200){
			xhr.responseText; - 拿去到后端给我们的东西,难就难在这个点,你拿到了要干什么?
		}
	}