Flex 3.2 与 Flex >= 3.5 的 HTTPService/ResultEvent

2024-01-10

通过设计决策或任何 Adob​​e 更改了 HTTPService 对象触发的 ResultEvent 的内容。

看看下面的例子:

var httpService:HTTPService = myHTTPServices.getResults();
httpService.addEventListener(ResultEvent.RESULT,resultHandler);
httpService.send();

/**
 * Handels the login process
 */
function resultHandler(event:ResultEvent):void
{
    // get http service
    var httpService = (event.target as HTTPService);

    // do something
}

它与 Flex 3.2 一起工作就像一个魅力。但是当我尝试用 Flex 3.5 或 Flex 4.0 编译它时event.target 作为 HTTPService一片空白。

我发现 event.target 现在是一个实例HTTP操作。这很有趣,因为我找不到HTTP操作在 langref 中。不过,我认为Flash Builder的调试器的意思是mx.rpc.http.操作.

调试器还显示事件目标有私有属性http服务这是我期望得到的实例事件目标。但这是私人的,所以事件.target.httpService不起作用。

如果我只想删除 EventListener 我可以强制转换事件目标 as 事件调度器。但我需要使用以下方法HTTP服务.

那么:我怎样才能得到HTTP服务来自 ResultEvent 的实例?

任何帮助,将不胜感激。谢谢!

J.


如果您对此感兴趣,那么仔细阅读源代码会很有用。在 OS X 上rpc课程在这里:/Applications/Adobe Flash Builder Beta 2/sdks/3.4.1/frameworks/projects/rpc/src

Inside mx.rpc.http.HTTPService确实有一个名为的内部类HTTPOperation。 它延伸mx.rpc.http.AbstractOperation这反过来又延伸了mx.rpc.AbstractOperation。里面AbstractOperation是一个 getter 方法get service它看起来会返回你需要的东西。

Since HTTPService是一个内部类,它实际上是私有的,因此您需要转换为AbstractOperation(任何一个mx.rpc.http.AbstractOperation or mx.rpc.AbstractOperation).

所以像这样:

function resultHandler(event:ResultEvent):void
{
    // get the operation
    var operation:AbstractOperation = AbstractOperation(event.target);

    // get http service
    var httpService:HTTPService = HTTPService(operation.service);
}

edit:我把它收回!看起来 Adob​​e 正在发送null当服务在构造 HTTPOperation 时调用 super 时。因此,HTTPService 仅缓存在私有变量中httpService。我不知道他们为什么向你隐藏它,但看起来你必须保留自己的参考资料。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Flex 3.2 与 Flex >= 3.5 的 HTTPService/ResultEvent 的相关文章

  • 正则表达式解析货币价值

    我需要在 AS3 中编写一个 RegExp 它将 Excel 格式的货币值解析为数字 例如 正则表达式 35 600 00 35600 并检查其格式是否正确 使用 作为千位分隔符 作为小数点 货币符号可以是任何符号 不仅仅是 并且可以位于开
  • AsyncTask 也在 flash 中吗?

    我开发了一款大小为 27mb 的游戏 我将其加载到设备中 它的性能会降低 有时会挂起设备 这个游戏中使用了很多媒体资源 如果我在 android 中制作它 那么我会处理和异步任务 http developer android com ref
  • URLLoader 数据到 BitmapData

    我正在尝试加载 SWF 文件旁边的图像文件 像这样的东西 var loader URLLoader new URLLoader loader dataFormat URLLoaderDataFormat BINARY loader addE
  • Flash 点击时不打开链接

    我用 Flash 创建了这个横幅 我需要单击它来打开一个网页 我使用了这个 Actionscript 3 0 代码 link btn addEventListener MouseEvent CLICK openurl function op
  • 当给定闪光角度和速度时,计算物体的轨迹

    我正在尝试从大炮中发射炮弹并使其遵循现实的路径 射击角度根据大炮的方向而变化 自动定向到鼠标指针 所以我想弄清楚的是 当给定角度和设定速度时 如何沿着抛物线路径移动炮弹 我读到 这可以在没有复杂的三角学的情况下完成 在高中时从未听过 并且可
  • 如何在flex中绘制虚线

    经过一番搜索和阅读 Graphics 类文档后 我找不到指定线条的线条样式的方法 我的意思是这条线是实线还是虚线 有人可以帮助我吗 Thanks 无论如何 您不能仅仅通过使用 Flex 库类 当然 你也可以自己做 这是一个实现它的类 根据找
  • 此 xpath 查询的 Flex/AS3/E4X 等效项是什么?

    鉴于此文档
  • Flex 构建的 SWF 不再工作,错误 2048、2046、2032

    我对这个问题真的很困惑 而且我对 Flex 还很陌生 基本上 我尝试使用 mxmlc 构建的任何内容现在都无法运行 根据我的操作给出上述三个错误 30 分钟前它还在工作 我一直在花时间试图找出发生了什么变化 我重新下载了 Flex SDK
  • 需要澄清应用程序域

    我需要对这个主题进行一些澄清 因为我刚刚遇到将 swf 加载到重用加载器对象中的问题 假设我有 3 个 SWF 主文件 swfchildA swfchildB swf Main swf 中有一个可重用的加载程序对象 myloader loa
  • 在 AS3 中将 Little-endian ByteArray 转换为 Big-endian

    AS3中如何将Little endian ByteArray转换为Big endian 我将 bitmapData 转换为 Big endian ByteArray 然后使用 Adob e Alchemy 将其推入内存 然后当我从内存中读取
  • ActionScript 3 中的圆形滑块

    我希望在 ActionScript 中添加一个圆形滑块 非常类似于这一页 http interface eyecon ro demos drag vr html shows 它最终会改变对象的色调 返回 CMY 值 但如果它只是吐出程度 我
  • 如何在 Flex 3 中使用 htmlText 作为单选按钮标签

    我需要在 Flex 3 中为单选按钮显示一些粗体单词 如下所示 选项 1 你好world 选项2 Hello world 我看到单选按钮的标签没有 htmlText 属性 有人对完成这个要求有什么建议吗 Thanks Anji 蒂莫菲 达维
  • 调用控制器 Post 方法时遇到问题

    这是我的方法 AcceptVerbs HttpVerbs Post public void SaveImage FormCollection formValues byte contents Convert FromBase64String
  • AS3 是否可以复制 Shape 对象?

    我正在尝试制作一个可用于复制的形状 这是我所做的 我正在尝试做的以及我陷入困境的解释 在 Flash IDE 画笔 中手动绘制形状 创建了一个包含形状的新影片剪辑 作为一个类导出 实例化该类 var mc MovieClip new sha
  • 求反射角的弧度

    我正在编写一个简单的 Flash 游戏 只是为了学习 Flash 并提高我的数学能力 但我对弧度感到非常困惑 因为这对我来说是新的 到目前为止 我所做的是使用鼠标 单击并释放 使用弧度向该方向射出一个球 现在我想要发生的是 当球撞到墙壁时
  • Actionscript 对象的属性数量

    如何获取通用 Actionscript 对象中的属性数量 如数组长度 您必须循环所有元素才能对它们进行计数 function objectLength myObject Object int var cnt int 0 for var s
  • Flash 未在调试播放器中显示错误/堆栈跟踪(firefox/chrome/whatnot)

    我正在尝试调试在线默默地失败的应用程序 我 100 确定我正在运行 Flash 调试播放器 为了确保我不会丢失它 我故意抛出一个错误 但 Flash 在浏览器中没有显示任何 stracktrace 我快要失去它了 有什么线索吗 我正在 ch
  • 更改由 AS3 添加到舞台的影片剪辑中的动态文本字段不起作用?

    当我更改动态文本字段的文本值时 文本字段只是变为空白 而不显示新值 我有一个名为 game board 的 MovieClip 由 AS3 动态添加到舞台上 舞台一开始是空白的 我有另一个名为 stage 2 的 MovieClip 它作为
  • 将数组从 Flash (AS3) 发送到 JavaScript

    是否可以使用ExternalInterface 调用将数组从Flash AS3 发送到JavaScript 我目前正在 Flash 内的 foreach 循环中多次调用一个函数 但速度太快 JavaScript 无法跟上 我的想法是创建一个
  • 使用ExternalInterface和IE从JavaScript获取Flash中的当前URL

    我正在尝试获取 Flash 播放器当前所在的 URL 不是 swf 文件的 URL 而是浏览器指向的 URL 到目前为止我已经使用过 var st String ExternalInterface call window location

随机推荐