一. Ajax工作原理:
:通过脚本语言的监听和触发事件,开启ajax.在ajax中创建执行http请求的对象----XMLHttpRequest对象.用open方法创建一个http请求,send方法将请求发出.onreadychange设置回调函数,处理服务器传回的数据.
Ajax 交互流程
1、用户在 Web 页面的交互动作触发 DOM事件
2、DOM事件处理者收到事件发生的消息处理
3、事件处理者创建XMLHttpRequest对象,设置目标URL、HTTP方法(Get、Post)等内容,注册服务器响应的回调函数
4、向服务器发生异步的HTTP请求
5、异步请求发出后,浏览器不必等待服务器响应,用户可以继续与页面交互
6、服务器收到请求后,指派对应的Servlet处理对应逻辑
7、将结果数据序列化成 XML作为响应内容,返回给浏览器
8、调用在XMLHttpRequest对象上注册的回调函数
9、回调函数解析响应内容 XML文档,依据其中的数据使用JavaScript操纵DOM对象更新页面内容
创建 XMLHttpRequest对象-->编写回调函数---->创建请求----->发送请求和参数
二.Post和get的区别:
1.参数在get方法中,作为url的一部分显示在路径中,post方法没有。
2.Post传输的数据量大,可以达到2M,而Get方法由于受到URL长度的限制,只能传递大约1024字节.
3.Post顾名思义,就是为了将数据传送到服务器端,Get就是为了从服务器端取得数据.而Get之所以也能传送数据,只是用来设计告诉服务器,你到底需要什么样的数据.Post的信息作为http请求的内容,而Get是在Http头部传输的。
4.在ajax中的post提交中,参数作为http请求的实体.为了确保服务器知道实体中有参数变量.通常使用XmlHttpRequest对象的SetRequestHeader(“Context-Type”,”application/x-www-form-urlencoded”);