【问题标题】:flash - django communication -- amf, xml, or json?flash - django 通信 - amf、xml 还是 json?
【发布时间】:2010-03-29 10:44:40
【问题描述】:

我们正在考虑为使用 Django 编写的 Web 应用程序开发 Flash 前端。 Flash 前端将向服务器发送一个简单的“id”,并作为响应接收几个对象。该应用程序仅对经过身份验证的用户开放。

就我目前的知识(这是 Flash 的基础知识)而言,我们可以使用 AMF 或采用 XML 或 JSON 方法。 AMF 似乎占了上风,因为互联网上有一些例子表明它可以轻松地与 Django 的身份验证机制合作(大多数例子都具有 pyAMF)。另一方面,实现基于 XML/JSON 的解决方案可能更容易且轻松。

我们将不胜感激。

【问题讨论】:

    标签: django flash


    【解决方案1】:

    我们在这里的许多项目中都使用了 pyAMF + Django,安装和运行起来很容易。如果您需要速度,AMF3 可能是您最好的选择。这是传输数据的最小/最快的方式,并为您处理序列化。

    另一方面,使用 Django 设置 json 也没有太多工作,它可以让您无需任何额外工作就可以将其他非 AMF 系统挂接到其中。你只需要牺牲一点速度来获得这个好处。

    如果您认为您将需要其他系统与后端一起工作,或者如果您认为您可能会切换到纯 HTML,或者提供某种非 Flash 版本的应用,我会选择 JSON,否则,我会使用 AMF。

    【讨论】:

      【解决方案2】:

      首先,您应该以一种无关紧要的方式设计您的应用程序。传输层应该被完全封装,让编码格式对应用程序的其余部分透明。

      我个人更喜欢 JSON 而不是 AMF,因为它是人类可读的(这使得调试更容易)并且每个平台/语言都有实现(例如,您可以使用 JavaScript 重用服务器部分)。我更喜欢 JSON 而不是 XML,因为它更紧凑,语义上更不明确,并且更接近常见的对象模型。它还可以以类型安全的方式传输数字和布尔数据。

      【讨论】:

      • 谢谢。如果我们使用 json/xml 而不是 amf,我需要更多关于用户身份验证的信息。
      • @shanyu:对不起,我帮不上忙。但我不明白为什么 django 不应该有 AMF 的内置身份验证,而 JSON 或 XML 没有。你有关于 django+JSON/XML 和 django+AMF 的链接吗? django 如何对纯 HTML 前端进行身份验证?通常 JSON 和 XML 都会完全以相同的方式工作(假设您通过 HTTP 使用它们,这是最明智的做法)。
      【解决方案3】:

      JSON 的复杂性可能最少,这里有一个很棒的谷歌代码项目,其中包含 JSON 编码器和解码器:http://code.google.com/p/as3corelib/

      【讨论】:

        猜你喜欢
        • 2011-09-12
        • 2010-11-28
        • 1970-01-01
        • 2017-06-03
        • 1970-01-01
        • 1970-01-01
        • 2011-06-11
        • 1970-01-01
        • 2010-11-24
        相关资源
        最近更新 更多