发送 ByteArray 到 Zend_Amf
我在将 ByteArray 发送到我的 Zend_Amf_server 时遇到问题。 我从服务器收到 NetConnection.Bad.Call。 如果我发送一个具有另一种数据类型的变量,那么 ByteArray 就可以正常工作。
我之前在 AMFPHP 中使用过相同的脚本,没有任何问题。 但对于这个项目,我确实需要它在 Zend_Amf 中工作。
AS3:
var path:String = "/images/picture.jpg";
var ba:ByteArray = jpgencoder.encode(bitmap.bitmapData);
var nc:NetConnection = new NetConnection();
nc.connect(zend_amf_server);
nc.call("Service.saveJPG", new Responder(responseHandler, errorHandler), path, ba);
PHP:
class Service{
public function saveJPG($path, $byteArray){
return "worked";
}
}
I'm having problems sending a ByteArray over to my Zend_Amf_server. I get a NetConnection.Bad.Call back from the server. If I send a variable with another datatype then ByteArray it works fine.
I used the same script before with AMFPHP witouth any problems. But for this project I really need this to work in Zend_Amf.
AS3:
var path:String = "/images/picture.jpg";
var ba:ByteArray = jpgencoder.encode(bitmap.bitmapData);
var nc:NetConnection = new NetConnection();
nc.connect(zend_amf_server);
nc.call("Service.saveJPG", new Responder(responseHandler, errorHandler), path, ba);
PHP:
class Service{
public function saveJPG($path, $byteArray){
return "worked";
}
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
今晚我从 Zend AMF 中得到了同样的错误,对之前在 AMF 中工作的代码做了基本相同的事情。 这就是我所拥有的正在运行的东西。 我发现与您的代码唯一不同的是我仅将 ByteArray 传递给 Zend,并且我显式设置了 ObjectEncoding。
我不断在服务器上收到空 jpg,因为我在其他地方读到我需要执行 ->data 才能获取 ByteArray 数据。
AS3:
PHP:
I was getting the same error from Zend AMF tonight doing basically the same thing with code that previously worked in AMF. Here's what I have that's working. The only bit I spot different from your code is I'm only passing the ByteArray to Zend, and I'm explicitly setting the ObjectEncoding.
I kept getting empty jpgs on the server because I'd read elsewhere that I needed to do ->data to get to the ByteArray data.
AS3:
PHP:
感谢 David 的回复,问题似乎是我将 ByteArray 与 String 一起发送到 Zend_Amf 。
如果我只发送 ByteArray,它就可以正常工作并且图像将被保存。
现在唯一的问题是保存图像的路径应该是可变的,我无法同时将其与 ByteArray 一起发送到我的 Amf_Server 。
Thanks David for your reply, the problem seemed to be that I sent a ByteArray to Zend_Amf together with a String.
If I send the ByteArray only it works fine and the Image is saved.
The only problem now is that the path to save the image on should be variable and I can't send it over to my Amf_Server together with the ByteArray at the same time.
好吧,我发现问题了。 我在最新的“tag”存储库 v.1.7.5 中使用 Zend Framework,我将 AMF 存储库切换到“trunk”存储库,现在它可以工作了。 当向 Zend_Amf_Server 发送数组时,它存在一个错误。
Ok, I found the problem. I was using the Zend Framework in the latest 'tag' repository v. 1.7.5 I switched the repository for AMF to the the 'trunk' repository and now it works. There was a bug in Zend_Amf_Server when sending Arrays over to it.