当前位置:  开发笔记 > 编程语言 > 正文

我能正确理解Ajax吗?

如何解决《我能正确理解Ajax吗?》经验,为你挑选了1个好方法。

我一直在阅读Ajax,并希望从stackoverflow社区看到我是否正确理解了一切.

因此,正常的客户端服务器交互是用户在URL中提取Web浏览器类型,并且HTTP请求被发送到服务器,从Web服务器请求页面和资源(css,pics).Web服务器通过HTTP响应客户端请求的页面/资源,浏览器呈现html/JavaScript以供用户查看页面.

1)那么可以安全地说XMLHttpRequest(XHR)对象正在执行与浏览器相同的过程,除了你没有从服务器请求html,你的请求文本是某种格式吗?

2)XHR对象是否像常规对象一样,可以由创建对象的程序(如普通对象)操纵,还可以通过HTTP与另一个程序(Web服务器)发送和接收数据?

3)因此在我的脑海中创建XHR时,它被加载到内存中,当我们执行request.open("GET",url,true)时,我们设置了一些对象参数.一旦我们执行了request.send(null),对象基本上会尝试通过HTTP"获取"URL,一旦我们从服务器获取数据,它就被放入responseText参数中.我理解正确吗?

4)同步和异步.当我想到同步时,我想到必须遵循的步骤.例如,我按下一个按钮,数据被发送到服务器,我必须等待数据返回,然后我才能做其他事情.使用异步连接,我会按下按钮,数据被发送到服务器,我会在数据被发回时做我想做的事情.这是一个很好的比喻吗?



1> Salty..:

1)不.XMLHttpRequest对象正如其名称所暗示的那样 - 它启动HTTP请求.此请求可以是XML,HTML或PHP.在一天结束时,浏览器并不关心,因为在AJAX请求中,它不会解析请求 - 您必须自己完成.因此它不会自动从AJAX请求呈现HTML.

2)我不确定操作(XHR对象可能是不可变的)但可能.你需要扩展它还是操纵它? 是的,您可以更改对象的属性等.我道歉.起初我不明白你:)

3)是的.

4)这是一个很好的类比.这正是发生的事情.另一个类比是4车道高速公路是异步的,因为单向的街道是同步的.如果一辆车在4车道高速公路上发生故障,其余车辆将继续以正常速度行驶 - 但如果在单行道上发生故障,一切都会冻结.:)

推荐阅读
mobiledu2402852413
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有