我正在一个非常大的报告引擎上启动Flex应用程序,并想知道如何最好地连接到Postgres数据库。我想创建一个REST API架构,这样我就可以使用该服务而不仅仅是Flex应用程序(可能是移动设备)。
我发现这些是我的选择:
数据类型:XML,JSON或AMF
Flex服务:HTTPService或WebService
服务器(使用PHP):ZendAMF,自定义json_encode实现,Zend_Rest_Server
我已将所有视图都映射出来,并设计了api函数。基本上我需要的是关于Flex /后端服务组合提供的建议。
感谢您的建议!
答案 0 :(得分:1)
[我]想知道如何最好地连接到 Postgres数据库。
最好是非常主观的。您可能不希望直接从Flex连接到Postgres数据库。 Flex不是专为此类设计的。我建议使用应用程序服务器作为中间件。 ColdFusion,.NET,PHP,Java以及几乎任何其他“当前”应用程序服务器都可以用作该中间件。我建议使用你(或你的团队)熟悉的任何东西。
对于Flex,我强烈建议您使用AMF实现。 AMF是一种二进制格式,它将为您提供较小的数据传输数据包,以及服务器端对象到客户端对象的转换。它可以节省你编写XML解析例程的时间,这有时会令人讨厌。
使用ColdFusion,可以很容易地创建可同时用于AMF,SOAP Web服务和REST服务的服务器端服务(CFC)。您只需在函数定义中指定'access =“remote”'。我希望其他服务器端语言具有类似的功能,但从未调查过其他语言的Web服务相关功能。
答案 1 :(得分:1)
Flex / Server Implementation的最佳服务/连接组合
没有最好的方法,但实际上取决于您的项目以及您希望如何继续。有三种方法。
由于您也想在其他应用程序中重用这些服务,我建议您使用Web Service。您可以使用您喜欢的任何服务器侧板语言创建Web服务,并将其与Flex应用程序进行通信。
关于AMF
它是您使用服务器侧板语言交互Flex App的方法之一。 AMFPHP或ZendAMF做得很好,而且很容易沟通。
我建议您更多地关注Flex Architecture,而不是研究Flex如何与Backend进行通信。
查看基于模块的架构。 检查您要开发Flex App的框架。 [Mate,Cainogram,Swiz或其他]当您决定使用前端架构如何实现流程时,您可以决定如何进行沟通,哪种方法最适合您的项目,以便将未来的事情保留在您的脑海中。
由于您的应用程序将面向报告,请转到Web服务。