代码之家  ›  专栏  ›  技术社区  ›  Erik van Brakel scottrakes

XmlHttpRequest返回值

  •  3
  • Erik van Brakel scottrakes  · 技术社区  · 17 年前

    我正在寻找(可以说)从数据库中返回数据的正确方法 XmlHttpRequest 。我看到的选项有:

    • 纯HTML 。让请求格式化数据并以可用格式返回。
      优势 :易于调用页面使用。
      缺点 :非常僵化,固定布局。

    • 可扩展置标语言 。让请求返回XML,在调用页面上使用XSLT对其进行格式化。
      优势 :请求的服务很容易被其他来源使用。
      缺点 :浏览器对XSLT的支持足够好吗?

    • 对象符号 .让请求返回JSON,使用javascript使用它,相应地呈现HTML。
      优势 :更容易“OO化”发出请求的javascript。
      缺点 :可能没有前两个选项那么容易使用。

    我还考虑过在抽象被调用服务中的视图逻辑的同时选择选项一,这样切换不同的布局就很容易了。就我个人而言,出于兼容性的原因,我认为这个选项是三个选项中最好的。

    在打字的时候,我得到了另一个见解。根据添加到请求中的参数,允许所有三种响应格式是个好主意吗?

    5 回复  |  直到 9 年前
        1
  •  2
  •   Community CDub    8 年前

    如果你正在寻找一个适用于大多数可用框架的快速解决方案,我会选择JSON。它很容易开始和工作。

    如果您正试图构建一个更大的应用程序来进行扩展(就规模而言,或者您自己的API用于第三方扩展),我会选择XML。您也可以编写一个代理来提供JSON或HTML格式的信息,但在构建应用程序时,以XML作为主要来源绝对值得花费时间和精力。

    喜欢 @John Topley 他说:这取决于。

        2
  •  2
  •   Ian Oxley    17 年前

    我同意约翰·托普利的观点——这取决于申请。有一篇关于quirksmode的好文章,讨论了每种格式的优缺点,你可能想读一下: http://www.quirksmode.org/blog/archives/2005/12/the_ajax_respon.html

        3
  •  0
  •   Erlend Halvorsen    17 年前

    我认为这在一定程度上取决于你的应用程序的“开放性”水平。如果你的前端是一个“富客户端”,即gmail,我会选择JSON解决方案,因为无论如何,你都必须解决客户端视图生成的问题。如果你谨慎使用ajax,为了向用户提供简单的消息,不时更新一些字段等,那么我会选择选项1,因为你的大部分视图逻辑已经在服务器上了。

        4
  •  0
  •   JasonMichael    17 年前

    我认为尝试使用XmlHttpRequest将是一个巨大的麻烦,除非是你不介意的那种麻烦——要正确地使用它,你几乎是在重新发明轮子。再说一次,人们喜欢在业余时间重新发明轮子,只是为了说,“嘿,我做到了”。不是我。。。

    我会得到一个像prototype或Extjs这样的框架,它内置了很多XML和JSON的数据加载函数,而且你会得到更可预测的结果,因为这些框架有事件处理程序来确保你的XmlHttpRequest成功或失败。此外,您还可以获得对所有不同浏览器的支持。

        5
  •  0
  •   NoNaMe    12 年前

    不同的响应格式应该不难产生。 JSON 最适合我,我喜欢保持 OO 在……里面 js ,并且不知道如何很好地解析XML:)