【问题标题】:Communication between 2 Flex/Flash apps on the same webpage同一网页上的 2 个 Flex/Flash 应用程序之间的通信
【发布时间】:2010-12-21 15:16:30
【问题描述】:

在同一网页上的 2 个 Flex/Flash 应用程序之间进行通信的最佳方式是什么?我需要一个第 3 方 Flash 应用程序来调用我的 Flex 4 应用程序上的一个函数(他们已准备好按照我的指定自定义他们的第 3 方应用程序)。我广泛使用ExternalInterface.call("javascript_function", arguments)。我知道从 Javascript 到 Actionscript 也有一座桥梁。所以我想我可以从他们的 flash 应用程序 -> javascript 函数 -> flex 桥 -> 我的 flex 应用程序。我必须通过javascript吗?有没有更好的办法?

【问题讨论】:

    标签: apache-flex flash actionscript-3 flex4 externalinterface


    【解决方案1】:

    您可以查看 LocalConnection,但如果其他应用程序确实是第三方,则使用 Javascript 作为桥梁可能更有意义(因为您无法完全控制其他应用程序)。

    LocalConnection 肯定比使用 Javascript 更好更简洁,但我总是担心让第三方访问我的应用程序的内部。

    【讨论】:

    • 您只公开 LocalConnections 客户端对象中的方法 - 只是不要将客户端设置为应用程序本身,您不必担心会公开您的应用程序内部。您还可以在本地连接上设置域策略,以防止恶意第三方访问。
    • 是的,我认为我的担忧比任何真正的担忧都更加偏执。尽管如果您确实控制了 javascript,那么它可以帮助简化双方之间的集成测试(而不是来回发送二进制文件进行测试)。您可以很容易地看到每一方都在发送和接收正确的数据。如果与外部方的沟通很差,这可能会有所帮助。
    • 我认为您还可以让第 3 方应用程序将其数据导出到资产文件夹中的本地 XML 文件(在两个应用程序所在的 Web 服务器端),并且您的应用程序可以使用 URLLoader阅读本文。
    • LocalConnection 是我想要的,谢谢。但现在我认为 JavaScript 桥更有意义,因为这是一个 3rd 方应用程序,我将来可能无法进行更改。我想要 javascript 允许的灵活性(也许将应用程序更改为 Javascript)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-20
    • 1970-01-01
    • 2016-06-03
    相关资源
    最近更新 更多