问题标签 [zend-amf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
271 浏览

php - 使 AS3 和 ZendAMF 协同工作的一些帮助

经过一些研究,我发现我当前项目的最佳选择是使用 AS3 与 ZendAMF 合作,以便能够连接 PHP->MySql。

但是,有一个小问题,我不能让它工作,也许是我,但官方(官方网站)文档有点糟糕。

那么,是否有适当的指南来提供使用 ZendAMF 的工作示例?

非常感谢。

编辑:我没有使用 Flex 组件,你使用的是 Flash Builder,我的项目完全是 AS3。

0 投票
1 回答
515 浏览

apache-flex - flex - zend amf - 如何转换为与 mongodb 兼容的日期并返回?

在 flex(flash builder 4)中,我有一个 Date() 属性,我将其传递给 Zend AMF(php),我想将它(以及其他数据)存储在 mongoDB 中。

Mongodb 抱怨日期,因为它是一个 Zend_Date 对象,它似乎是一个包含多个属性的对象,而 Mongodb 说它不能接受空白属性。

所以,我认为这意味着它需要转换为其他东西才能存储它?

如果是这样,我该怎么做?

目前我已经采取了将 Zend_Date 对象转换为日期字符串来存储它的方法(在 php 中):

这很好用,我在那个日期的 mongodb 中有一个字符串。

现在,当我从 MongoDB 加载日期时,我需要将其转换回 Zend_Date 以便它正确地转换回 flex 中的 Date() 对象(我必须检查它是否为空,否则会在 php 中引发错误):

这一切都有效,但似乎应该有一种更简单的方法从 flex 获取 Date() 并通过 Zend AMF/PHP 将其存储在 MongoDB 中。?

0 投票
1 回答
205 浏览

php - ZendAMF - 所有这些流量是什么?

我正在使用 ZendAMP php 和 Flex (Flash Builder 4)。它工作得很好,但我注意到当我查看我的 flex 应用程序和 ZendAMF 之间的流量时,即使我没有在我的代码中请求通信,也有数据包在移动。

例如,这是我的服务在 flex 中的样子:

然后我在设置我的 addlistener 之后调用类似 activityLogService.getRecord(myPassedParams) 的东西。

当我使用诸如提琴手之类的东西观察网络流量时,我可以看到我的请求和响应回来了。

但是,我还看到这些请求数据包不包含我的 zend 服务对象的名称:

回来的回应也很模糊:

这些只是某种“保持活力”的信息吗?

如果是这样,有没有办法关闭它们?

另外,如果是这样,有没有办法可以使用它们在服务器端保持某种会话活跃(也许这就是它们的用途)?

0 投票
3 回答
2029 浏览

php - 在 PHP/Zend 的异常响应中隐藏堆栈跟踪

我想知道是否有办法在 PHP 的异常中隐藏堆栈跟踪。我在 ZF 下运行 Zend Amf 服务器,想处理前端的故障,但显示堆栈跟踪 (faultDetail) 不是我想要遇到的。

我的下一步是克服这些错误并将我自己的对象发回,但我宁愿克服异常而不显示跟踪。

0 投票
1 回答
154 浏览

apache-flex - Flex AMF 离线模式?

我目前正在使用 Flex (Flash Builder 4) 并将 Web 服务连接到 Apache PHP Zend AMF 服务器以检索数据。

这很好用,但我想知道哪些选项可用于容错。

我知道我可能可以设置第二台服务器,如果应用程序无法访问第一台服务器,它会切换到该服务器。对此有任何想法都会很好,但我也在考虑尝试给每台机器一些容忍度。

例如,如果他们至少有能力向应用程序输入数据,那将是一个开始。因此,如果他们单击“保存”并且无法访问服务器,则会将其缓存或存储到本地文件,直到服务器备份。尽管无法进行数据查找可能是一个大问题。

也许已经有一些图书馆或我可以看的东西来做到这一点?

0 投票
2 回答
363 浏览

apache-flex - 在 Codeigniter 中设置 Zend AMF 时访问服务目录

我按照本教程中的说明将 Zend AMF 设置为将数据从我的 flash 应用程序传递到我的 PHP 应用程序的一种方式:

http://codeigniter.com/forums/viewthread/180414/

所以我有目录结构和那里描述的一切。这是我的网关控制器:

}

APPPATH 是 /application/,所以 SERVIES_FOLDER 定义的路径是“/application/controllers/amf/services”,这是我的文件“testservice.php”所在的位置。

当我尝试在闪存中连接到该服务时:

它调用 onFault 方法并显示错误:

在注册表中找不到名为“Testservice”的插件;

这让我认为 Gateway.php 中的 addDirectory() 行在某种程度上是问题所在。有趣的是,我也无法通过 URL 访问 testservice 功能,即访问 mysite.com/amf/services/testservice。

对这里可能发生的事情有任何想法吗?

0 投票
0 回答
248 浏览

php - 在 Codeigniter 控制器中使用 ZendAMF

不确定我是否会以最好的方式解决这个问题,我正在尝试使用 codeigniter 实现 ZENDAMF。我遇到的问题之一是,我希望能够在允许用户向 zendamf 网关后面的服务发出任何请求之前检查用户是否已登录。我确实问过一个关于如何让它在构造中检查的问题,但我发现这是不可能的。

我的下一个想法是将网关创建为控制器,这样我就可以在请求发布到 zend amf 服务器之前访问我的身份验证库。但是当我调用该服务时,并没有识别任何 CodeIgniter 方法。

目前我没有进行登录检查,因为我想让 amf 服务器首先工作,所以我选择的示例是尝试返回我的 UserDetails。

这是我的 gateway.php 控制器

这是我的测试服务

当我实现所有这些时,我得到以下响应:

如果我扩展 CI_Controller 我会认为它应该允许我访问我的所有模型。

任何想法我现在真的很难过。

提前致谢

0 投票
1 回答
130 浏览

arraycollection - ZendAMF 1.11 和缺失的源代码

我们正在尝试从旧版本的 Zend Framework 升级到最新版本 (1.11)。

我们必须将一些 ArrayCollections 发送到我无法访问的 Flex 应用程序。以前版本的 ZFZend_Amf_Value_Messaging_ArrayCollection有一个source新版本没有的属性。

我曾尝试编辑Zend_Amf_Value_Messaging_ArrayCollection该类以具有该source属性,但似乎 ZF 不会将对象发送到 Flex 应用程序(我已经通过调试代理注意到了这一点)。ArrayCollection 仍然具有正确的键(AFAIK,从 0 -> 3),但值为NULL.

这是来自一个小的测试文件:

在评论中,您会看到 ZendAMF 的“旧”方式,在它们下方是新方式。

有没有办法让 ZendAMFsource再次使用该属性而无需返回旧版本的 ZF?

0 投票
1 回答
385 浏览

apache-flex - Flex 4.5 远程对象

我对 flex 中的远程处理非常陌生。我正在使用 flex 4.5 并与团队中其他人使用 AMF 构建的 Web 应用程序交谈。他们使用 Zend_AMF 对数据进行序列化和反序列化。

我目前面临的主要问题之一是我需要与很多服务(大约 60 个左右)交谈。

从我在网上和 adobe 看到的远程处理示例中,似乎我需要为每个服务定义一个远程处理对象:

有这么多服务,我想我可能需要定义其中的大约 60 个,我认为这不是很优雅。

同时,我一直在使用 Pinta 来测试 AMF 端点。Pinta 似乎能够允许人们定义任意数量的服务、方法和参数,而没有任何这些限制。挖掘源代码,我发现他们实际上已经深入到远程处理并且正在处理很多低级别的东西。

所以,问题是,有没有一种方法可以解决这个问题,而不必定义负载或远程对象,也不必深入研究并开始自己处理低级别的远程事件?

干杯

0 投票
1 回答
381 浏览

php - 将自定义类型对象作为参数传递给 PHP 服务方法调用

我们使用 zendamf 作为 flex 客户端和 PHP 服务器之间的远程网关。将服务器端类型映射到客户端类型似乎对作为服务方法参数传递的对象没有任何影响。所有具有自定义类型的对象都作为 stdClass 实例接收。有没有办法强制这样做?或者我们在这里错过了什么?

有什么想法吗?

谢谢!