加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ajax

发布时间:2020-12-15 22:08:26 所属栏目:百科 来源:网络整理
导读:AJAX 1. 什么是 AJAX? 他的作用是什么? AJAX 指异步 JavaScript 及 XML ( Asynchronous JavaScript And XML )。 AJAX 不是一种新的编程语言,而是一种使用现有标准的新方法。通过 AJAX ,你可以创建更好、更快以及更友好的 WEB 应用程序。 注意: AJAX 基

AJAX

1.什么是AJAX?他的作用是什么?

AJAX指异步JavaScriptXMLAsynchronous JavaScript And XML)。AJAX 不是一种新的编程语言,而是一种使用现有标准的新方法。通过 AJAX,你可以创建更好、更快以及更友好的 WEB 应用程序。

注意:AJAX 基于JavaScriptHTTP请求(HTTP requests)。

2.什么是同步通信?什么是异步通信?

1)同步:前台页面给后台服务器一个请求(发送一个表单内容,传递一个url),服务器获取到请求数据之后给前台页面一个响应,在这个过程当中,前台页面一直在等待(停止所有的动作)。

2)异步:前台页面给后台服务器一个请求(发送一个表单内容,传递一个url),服务器获取到请求数据之后给前台页面一个响应,在这个过程当中,前台页面正常工作。

3.怎么样实现异步通信?(AJAX技术:javascriptjquery

4.步骤:webserver之间的通信

步骤一:建立一个通信对象(XMLHttpRequest对象)

步骤二:利用该对象的open来确定一个具体的通信url(给谁发送请求)open("GET"|"POST",服务器url,true(异步)|false(同步))

步骤三:发送请求send

步骤四:监听服务器给出的响应(接收响应)

onreadystatechange=function(){函数内容}--匿名函数:自动执行,不需要调用

onreadystatechange=callback--回调函数--自动执行,有名字,函数执行完后会给主程序一个响应

responseText|responseBody 属性会存储从服务器返回的数据。

二、AJAX数据处理方式:

1.HTML的处理方式(responseText//document.getElementById("div").innerHTML+=xhr.responseText

2.XML的处理方式(responseXMLDOM//xmlobj=xhr.responseXML;

优点:格式固定,容易扩展数据,层析清晰

缺点:节点的获取(有问题)

所以解析XML一般用服务器语言(DOM

3.JSONeval函数格式化及responseJSON

JSON:利用js的对象来表示的数据(字符串)//jsonObj=eval("("+xhr.responseText+")")

js字面量:

1.对象字面量:

{

stu1:{name:"张三",sex:"",birthday:{year:1990,month:12,day:12}},

stu2:{name:"李四",

stu3:{name:"王五",

stu4:{name:"赵六",day:12}}

}

{属性名:属性值,...}

优点:访问简单,易获取(通过eval转换格式)

缺点:格式不固定,没有规则(写json的时候格外注意)

2.数组字面量:[{属性:},{},{...}]

[

{name:"张三",

{name:"李四",

{name:"王五",

{name:"赵六",day:12}}

]

二、注意事项

1、服务器给浏览器返回的数据格式:

普通文本:服务器用echo输出,客户端用xhr.responseText接收

Json格式:服务器echojson_encode()输出json格式数据,客户端xhr.responseText接收

Xml格式:必须发送头文件(header(“content-Type:text/xml;charset=utf8”))告知浏览器返回xml文件,客户端xhr.responseXML接收

2getpost区别

(1) Get请求时一定要注意地址栏不变,是因为缓存的问题,

解决方法:地址栏添加随即数,(Math.random())。发送header头信息命令浏览器不要缓存数据(header(“cache-control;no-cache”)

(2)get时,参数写在url中,encodeURL()防止乱码,math.random加随机数,防止缓存

Post 时,必须加上 xhr.setRequestHeader(“Content-Type”,”application/x-www-form-urlencoded”), 参数写在 send ()函数中

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读