Ajax技术的优缺点[通俗易懂]

Ajax技术的优缺点[通俗易懂]1. 什么是ajax,为什么要使用Ajax(请谈一下你对Ajax的认识)什么是ajax:AJAX是“AsynchronousJavaScriptandXML”的缩写。他是指一种创建交互式网页应用的网页开发技术。Ajax包含下列技术:基于web标准(standards-basedpresentation)XHTML+CSS的表示;使用DOM(Docu

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

1. 什么是ajax,为什么要使用Ajax(请谈一下你对Ajax的认识)

什么是ajax:

AJAX是“Asynchronous JavaScript and XML”的缩写。他是指一种创建交互式网页应用的网页开发技术。

Ajax包含下列技术:

基于web标准(standards-based presentation)XHTML+CSS的表示;

使用 DOM(Document Object Model)进行动态显示及交互;

使用 XML 和 XSLT 进行数据交换及相关操作;

使用 XMLHttpRequest 进行异步数据查询、检索;

使用 JavaScript 将所有的东西绑定在一起。

为什么要用ajax:

Ajax应用程序的优势在于:

1. 通过异步模式,提升了用户体验

2. 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用

3. Ajax引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载。

2. Ajax的最大的特点是什么。

Ajax可以实现动态不刷新(局部刷新)

就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。

3. 请介绍一下XMLHTTPREQUEST对象?

Ajax的核心是JavaScript对象XmlHttpRequest。该对象在Internet Explorer 5中首次引入,它是一种支持异步请求的技术。简而言之,XmlHttpRequest使您可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。通过XMLHttpRequest对象,Web开发人员可以在页面加载以后进行页面的局部更新。

4. Ajax技术体系的组成部分有哪些?

HTML,css,dom,xml,xmlHttpRequest,javascript

5. AJAX应用和传统Web应用有什么不同?

在传统的Javascript编程中,如果想得到服务器端数据库或文件上的信息,或者发送客户端信息到服务器,需要建立一个HTML form然后GET或者POST数据到服务器端。用户需要点击”Submit”按钮来发送或者接受数据信息,然后等待服务器响应请求,页面重新加载。

因为服务器每次都会返回一个新的页面, 所以传统的web应用有可能很慢而且用户交互不友好。

使用AJAX技术, 就可以使Javascript通过XMLHttpRequest对象直接与服务器进行交互。

通过HTTP Request, 一个web页面可以发送一个请求到web服务器并且接受web服务器返回的信息(不用重新加载页面),展示给用户的还是同一个页面,用户感觉页面刷新,也看不到到Javascript后台进行的发送请求和接受响应。

6. AJAX请求总共有多少种CALLBACK

Ajax请求总共有八种Callback

onSuccess

onFailure

onUninitialized

onLoading

onLoaded

onInteractive

onComplete

onException

7.Ajaxjavascript的区别?

       javascript是一种在浏览器端执行的脚本语言,Ajax是一种创建交互式网页应用的开发技术 ,它是利用了一系列相关的技术其中就包括javascript。

   Javascript是由网景公司开发的一种脚本语言,它和sun公司的java语言是没有任何关系的,它们相似的名称只是一种行销策略。

在一般的web开发中,javascript是在浏览器端执行的,我们可以用javascript控制浏览器的行为和内容。

 

 

 Ajax应用中信息是如何在浏览器和服务器之间传递的

      通过XML数据或者字符串

,8,在浏览器端如何得到服务器端响应的XML数据

       XMLHttpRequest对象的responseXMl属性

9 XMLHttpRequest对象在IEFirefox中创建方式有没有不同?

  有,IE中通过new ActiveXObject()得到,Firefox中通过new XMLHttpRequest()得到。

xmlHttp=new XMLHttpRequest(); 

Jetbrains全家桶1年46,售后保障稳定

xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");

10,介绍一下XMLHttpRequest对象的常用方法和属性(回答的越多越好)

        open(“method”,”URL”) 建立对服务器的调用,第一个参数是HTTP请求方式,可以为GETPOST或任何服务器所支持的您想调用的方式。  第二个参数是请求页面的URL

 

send()方法,发送具体请求,为空时表示没有别的参数需要上传

abort()方法,停止当前请求

 

readyState属性请求的状态有5个可取值 0=未初始化 1=正在加载 2=已加载,3=交互中,4=完成

responseText 属性服务器的响应,表示为一个串

reponseXML 属性服务器的响应,在浏览器端得到服务器端响应的XML数据

status  服务器的HTTP状态码,200对应ok  400对应not found

11Ajax的优点和缺点

     使用Ajax的最大优点,就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。

对应用Ajax最主要的缺点就是,它可能破坏浏览器后退按钮的正常行为

因为Ajax中采用了xml技术,所以在Ajax中也可能问到XML的问题

12,什么是XML

    -----Extensible Markup Language

     XML是扩展标记语言,能够用一系列简单的标记描述数据

13xml的解析方式

     常用的用dom解析和sax解析。dom解析是一次性读取xml文件并将其构造为DOM对象供程序使用,优点是操作方便,但是比较耗内存。Sax是按事件驱动的方式解析的,占用内存少,但是编程复杂

xml的解析方式Dom和SAX区别是什么?

SAX概念 (事件驱动的)
SAX是Simple API for XML的缩写,它并不是由W3C官方所提出的标准,可以说是“民间”的事实标准。实际上,它是一种社区性质的讨论产物。虽然如此,在XML中对SAX的应用丝毫不比DOM少,几乎所有的XML解析器都会支持它。 

与 DOM(文档驱动的)比较而言,SAX是一种轻量型的方法。我们知道,在处理DOM的时候,我们需要读入整个的XML文档,然后在内存中创建DOM树,生成DOM树上的每个Node对象。当文档比较小的时候,这不会造成什么问题,但是一旦文档大起来,处理DOM就会变得相当费时费力。特别是其对于内存的需求,也将是成倍的增长,以至于在某些应用中使用DOM是一件很不划算的事(比如在applet中)。这时候,一个较好的替代解决方法就是SAX。 

SAX 在概念上与DOM完全不同。首先,不同于DOM的文档驱动,它是事件驱动的,也就是说,它并不需要读入整个文档,而文档的读入过程也就是SAX的解析过程。所谓事件驱动,是指一种基于回调(callback)机制的程序运行方法。(如果你对Java新的代理事件模型比较清楚的话,就会很容易理解这种机制了) 

在XMLReader接受XML文档,在读入XML文档的过程中就进行解析,也就是说读入文档的过程和解析的过程是同时进行的,这和DOM区别很大。解析开始之前,需要向XMLReader注册一个ContentHandler,也就是相当于一个事件监听器,在 ContentHandler中定义了很多方法,比如startDocument(),它定制了当在解析过程中,遇到文档开始时应该处理的事情。当 XMLReader读到合适的内容,就会抛出相应的事件,并把这个事件的处理权代理给ContentHandler,调用其相应的方法进行响应。

 

14,你采用的是什么框架(架包)?        

       这题是必问的,一般也是最开始就会问到。

       java中比较流行的有 dojo, Prototype , JQuery, Dwr, extjs  等等

15,如果熟悉某种ajax框架,他可能会问到怎样在程序中使用这种框架

DWR框架介绍

n  DWR(Direct Web Remoting)是一个WEB远程调用框架.利用这个框架可以让AJAX开发变得很简单.利用DWR可以在客户端利用JavaScript直接调用服务端的Java方法并返回值给JavaScript就好像直接本地客户端调用一样(DWR根据Java类来动态生成JavaScrip代码).

n  DWR的实现原理是通过反射,将java翻译成javascript,然后利用回调机制,从而实现了javascript调用Java代码

16,介绍一下Prototype$()函数,$F()函数,$A()函数都是什么作用?

$() 方法是在DOM中使用过于频繁的 document.getElementById() 方法的一个便利的简写,就像这个DOM方法一样,这个方法返回参数传入的id的那个元素。

$F()函数是另一个大收欢迎的快捷键,它能用于返回任何表单输入控件的值,比如text box,drop-down list。这个方法也能用元素id或元素本身做为参数。

$A()函数能把它接收到的单个的参数转换成一个Array对象。

17、介绍一下XMLHttpRequest对象

通过XMLHttpRequest对象,Web开发人员可以在页面加载以后进行页面的局部更新。

AJAX开始流行始于Google2005年使用的”Google Suggest”

“Google Suggest”就是使用XMLHttpRequest对象来创建动态的Web接口:

当用户开始输入google的搜索框,Javascript发送用户输入的字符到服务器,然后服务器返回一个建议列表。

XMLHttpRequest对象在IE5.0+, Safari 1.2, Mozilla 1.0/Firefox, Opera 8+ NetScapt7 开始被支持。

18AJAX应用和传统Web应用有什么不同?

在传统的Javascript编程中,如果想得到服务器端数据库或文件上的信息,或者发送客户端信息到服务器,需要建立一个HTML form然后GET或者POST数据到服务器端。用户需要点击”Submit”按钮来发送或者接受数据信息,然后等待服务器响应请求,页面重新加载。

因为服务器每次都会返回一个新的页面,所以传统的web应用有可能很慢而且用户交互不友好。

使用AJAX技术,就可以使Javascript通过XMLHttpRequest对象直接与服务器进行交互。

通过HTTP Request,一个web页面可以发送一个请求到web服务器并且接受web服务器返回的信息(不用重新加载页面),展示给用户的还是通一个页面,用户感觉页面刷新,也看不到到Javascript后台进行的发送请求和接受响应。

19AJAX的全称是什么?介绍一下AJAX

AJAX的全称是Asynchronous JavaScript And XML.

AJAX2005年由Google发起并流行起来的编程方法, AJAX不是一个新的编程语言,但是它是一个使用已有标准的新的编程技术。

使用AJAX可以创建更好,更快,更用户界面友好的Web应用。

AJAX技术基于JavascriptHTTP Request.

20,介绍一下XMLHttpRequest对象的常用方法和属性?

open(“method”,”URL”) 建立对服务器的调用,第一个参数是HTTP请求    方式可以为GETPOST或任何服务器所支持的您想调用的方式。

第二个参数是请求页面的URL

send()方法,发送具体请求

abort()方法,停止当前请求

readyState属性   请求的状态有5个可取值 0=未初始化,1=正在加载

2=以加载,3=交互中,4=完成

responseText 属性服务器的响应,表示为一个串

reponseXML 属性服务器的响应,表示为XML

status    服务器的HTTP状态码,200对应ok 400对应not found

21.Ajax主要包含了哪些技术?

AjaxAsynchronous JavaScript + XML)的定义

基于web标准(standards-based presentationXHTML+CSS的表示;

使用 DOMDocument Object Model)进行动态显示及交互;

使用 XML  XSLT 进行数据交换及相关操作;

使用 XMLHttpRequest 进行异步数据查询、检索;

使用 JavaScript 将所有的东西绑定在一起。英文参见Ajax的提出者Jesse James Garrett的原文,原文题目(Ajax: A New Approach to Web Applications)

类似于DHTMLLAMPAJAX不是指一种单一的技术,而是有机地利用了一系列相关的技术。事实上,一些基于AJAX派生/合成式(derivative/composite)的技术正在出现,如“AFLAX”

AJAX的应用使用支持以上技术的web浏览器作为运行平台。这些浏览器目前包括:MozillaFirefoxInternet ExplorerOperaKonquerorSafari。但是Opera不支持XSL格式对象,也不支持XSLT

22AJAX都有哪些有点和缺点?

 

1、最大的一点是页面无刷新,用户的体验非常好。

2、使用异步方式与服务器通信,具有更加迅速的响应能力。

3、可以把以前一些服务器负担的工作转嫁到客户端,利用客户端闲置的能力来处理,减轻服务器和带宽的负担,节约空间和宽带租用成本。并且减轻服务器的负担,ajax的原则是按需取数据,可以最大程度的减少冗余请求,和响应对服务器造成的负担。

4、基于标准化的并被广泛支持的技术,不需要下载插件或者小程序。

ajax的缺点

1ajax不支持浏览器back按钮。

2、安全问题 AJAX暴露了与服务器交互的细节。

3、对搜索引擎的支持比较弱。

4、破坏了程序的异常机制。

5、不容易调试。



扩展:
SAX
事件驱动型的XML解析方式

顺序读取XML文件,不需要一次全部装载整个文件
。当遇到像文件开头,文档结束,或者标签开头与标签结束时,会触发一个事件,用户通过在其回调事件中写入处理代码来处理XML文件,适合对XML的顺序访问,且是只读的。





版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/234536.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • encoder和decoder的区别_python encode函数

    encoder和decoder的区别_python encode函数python内部的字符串一般都是Unicode编码。代码中字符串的默认编码与代码文件本身的编码是一致的。所以要做一些编码转换通常是要以Unicode作为中间编码进行转换的,即先将其他编码的字符串解码(decode)成Unicode,再从Unicode编码(encode)成另一种编码。decode:的作用是将其他编码的字符串转换成Unicode编码,name.decode(“GB23…

  • vue.js跨域_vueaxios跨域请求

    vue.js跨域_vueaxios跨域请求最近公司能的项目使用前后端分离,前端开发请求接口数据的时候碰到了跨域问题,解决方案如下一、SimpleCORSFilter工具类在项目Util类中新建类SimpleCORSFilter实现Filter接口packagecom.how2java.tmall.util;importjava.io.IOException;importjavax.servlet.Filter…

  • 乐乐音乐播放器(终)源代码+使用说明[通俗易懂]

    乐乐音乐播放器(终)源代码+使用说明

  • 撸明白分布式事务(四)

    撸明白分布式事务(四)前言在分布式系统中,消息队列在服务端的架构中的地位非常重要,主要解决异步处理、系统解耦、流量削峰等场景。多个系统之间如果同步通信很容易造成阻塞,同时会将这些系统会耦合在一起。因此,引入了消息队列,一方面解决了同步通信机制造成的阻塞,另一方面通过消息队列进行业务解耦。简单的服务间调用引入mq如下图所示可靠事件模式可靠事件模式,通过引入可靠的消息队列,只要保证当前的可靠事件投递并且消息队列确保事件传递至少一次,那么订阅这个事件的消费者保证事件能够在自己的业务内被消费即可。这里,请读者思考,是否.

  • Unix命令「建议收藏」

    Unix命令「建议收藏」1.在文件中查找关键字1)命令格式:find 路径 -name"文件名"|xargsgrep关键字比如:查找当前目录下的所有包含12345的log

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号