一、什么是Ajax(谈谈你对Ajax的理解)
Ajax是异步的 JavaScript和XML。 是一种用于创建快速动态网页的技术。 ajax用来与后台交互。
二、Ajax有几种请求方式?常用的请求方式他们有什么区别?
常用的post,get,。不常用delete、copy、head、link等等。
代码上的区别:
1:get通过url传递参数;
2:post设置请求头 规定请求数据类型。
使用上的区别:
1:post比get安全 (因为post参数在请求体中。get参数在url上面)
2:get传输速度比post快 根据传参决定的。(post通过请求体传参,后台通过数据流接收。速度稍微慢一些。而get通过url传参可以直接获取)
3:post传输文件大理论没有限制,get传输文件小大概7-8k ie4k左右。
4:get获取数据 post上传数据。(上传的数据比较多 而且上传数据都是重要数据。所以不论在安全性还是数据量级 post是最好的选择)
三、请介绍一下XMLhttprequest对象
XmlHttpRequest对象是Ajax的核心,用于在后台与服务器交换数据。该对象在IE5中首次引入,它是一种支持异步请求的技术。它能让开发人员实现:在不重新加载页面的情况下更新网页;在页面已加载后从服务器请求数据;在页面已加载后从服务器接收数据;在后台向服务器发送数据。
四、简述Ajax异步调用和局部刷新,需要几个步骤(实现Ajax的基本步骤)
1.创建XMLHttpRequest对象,也就是创建一个异步调用对象;
2.创建一个新的HTTP请求,并指定该HTTP请求的方法、URL及验证信息;
3.设置响应HTTP请求状态变化的函数;
4.发送HTTP请求;
5.获取异步调用返回的数据;
6.使用JavaScript和DOM实现局部刷新。
五、json字符串转换集json对象、json对象转换json字符串
//字符串转对象
JSON.parse(json)eval('(' + jsonstr + ')')
// 对象转字符串
JSON.stringify(json)
六、ajax接受到的数据类型是什么?
String;JSON串;JSON对象
七、哪些地方需要ajax,哪些地方不需要
页面不进行跳转刷新的时候,异步处理数据的时候,表单自动补全功能----使用Ajax;
提交后不再使用原页面,可以进行跳转刷新的,查询之类的功能,可以不用Ajax
八、Ajax技术体系的组成部分有哪些?
HTML,css,dom,xml,xmlHttpRequest,javascript
九、AJAX有几种状态?
0 - (未初始化)还没有调用send()方法
1 - (载入)已调用send()方法,正在发送请求
2 - (载入完成)send()方法执行完成,已经接收到全部响应内容
3 - (交互)正在解析响应内容
4 - (完成)响应内容解析完成,可以在客户端调用了
十、介绍一下XMLHttpRequest对象的常用方法和属性(回答的越多越好)
1.open(“method”,”URL”) 建立对服务器的调用,第一个参数是HTTP请求 方式可以为GET,POST或任何服务器所支持的您想调用的方式。
2.第二个参数是请求页面的URL。
3.send()方法,发送具体请求
4.abort()方法,停止当前请求
5.readyState属性 请求的状态 有5个可取值 0=未初始化 ,1=正在加载 2=以加载,3=交互中,4=完成
6.responseText 属性 服务器的响应,表示为一个串
7.reponseXML 属性 服务器的响应,表示为XML
8.status 服务器的HTTP状态码,200对应ok 400对应not found
十一、AJAX都有哪些有点和缺点?
ajax的优点
1、最大的一点是页面无刷新,用户的体验非常好。
2、使用异步方式与服务器通信,具有更加迅速的响应能力。
3、可以把以前一些服务器负担的工作转嫁到客户端,利用客户端闲置的能力来处理,减轻服务器和带宽的负担,节约空间和宽带租用成本。并且减轻服务器的负担,ajax的原则是“按需取数据”,可以最大程度的减少冗余请求,和响应对服务器造成的负担。
4、基于标准化的并被广泛支持的技术,不需要下载插件或者小程序。
ajax的缺点
1、ajax不支持浏览器back按钮。
2、安全问题 AJAX暴露了与服务器交互的细节。
3、对搜索引擎的支持比较弱。
4、破坏了程序的异常机制。
5、不容易调试。
十二、在浏览器端如何得到服务器端响应的XML数据?
XMLHttpRequest对象的responseXML属性