【发布时间】:2012-04-30 14:49:15
【问题描述】:
我在 Flex 中创建了一个组件,当用户输入一个条目时,它会自动完成几个文本输入。从 Flex 运行应用程序时,一切正常。但是,在我编译并加载应用程序后,自动完成功能不起作用。以下是一些背景信息。
- 在 Adobe Flash Builder 4.5 中创建。
- Web 应用程序正在内部网络上运行。
- 自动完成使用的服务是外部服务。
- 承载 Web 应用程序的内部服务器可以正常加载外部服务的 URL。
我不确定这是权限问题还是什么。任何见解将不胜感激。
【问题讨论】:
-
“当从 Flex 运行应用程序时”我不确定这是什么意思。不编译就不可能测试应用程序。您的意思是从 Flash Builder 启动应用程序时它工作正常;但不是当你把它放在网络服务器上?还是你的意思是别的?如果您对自动完成数据使用外部服务;您是否有一个跨域文件允许 Flex 在从不同的 Web 服务器提供服务时调用远程服务?使用“硬盘 URL”在浏览器中加载已编译的 SWF 将绕过跨域安全限制。
-
对不起,不清楚。是的,我应该说从 Flex 启动 Web 应用程序时一切正常。我确实有一个跨域文件,该文件设置为允许从任何请求标头和任何域进行访问。
-
您是否收到任何错误消息或什么也没有?服务器的响应是什么?也许您可以使用像 Charles 这样的代理来查看响应是什么(或者也许 FireBug 的“网络”面板已经可以做到这一点)。
-
没有错误信息。使用 Fiddler2 可以跨域文件进行通信,并且没有错误报告。我开始怀疑是否需要编辑跨域文件...
-
如果您的跨域文件出错,则服务器应该返回一个错误。要么找不到文件本身,服务器将返回 404,要么配置不正确,在这种情况下您应该收到安全错误。调用服务器时是否监听错误事件?