嗨我使用flash navigateToURL方法调用Java servlet。java servlets响应 - 留在同一页
在某些情况下,我希望servlet告诉浏览器客户端保持在同一页面上 - 我该如何实现这一目标?如果响应是空的,则页面变为空白。
嗨我使用flash navigateToURL方法调用Java servlet。java servlets响应 - 留在同一页
在某些情况下,我希望servlet告诉浏览器客户端保持在同一页面上 - 我该如何实现这一目标?如果响应是空的,则页面变为空白。
我认为你使用错误的方法来访问java servlets。如果您需要保持打开相同的页面,那么navigateToURL不是您应该使用的。 nagivateToURL方法是根据文档:
打开或替换包含Flash Player容器(通常是浏览器)的应用程序中的窗口。在Adobe AIR,该功能会打开默认的系统Web浏览器
一个URL可以使用
查看链接了解更多详情。
你不能。 navigateToURL
指示浏览器打开另一个URL。在浏览器导航更改后提取内容。
您应该在flex应用程序中发出HTTP请求。这是可以做到这样的:
var req:URLRequest = new URLRequest();
req.method = URLRequestMethod.POST;
var vars:URLVariables = new URLVariables();
vars.param1 = "param1";
vars.param2 = "param2";
req.data = vars;
req.url = "/targetUrl";
var loader:URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE, pageLoadComplete);
loader.load(req);
然后在pageLoadComplete(event:Event)
方法:
var result:String = URLLoader(event.currentTarget).data.toString();
这是明智的做出这样的调用返回简单true
或false
,这取决于你的URL将不得不重定向。
问题是,servlet应该指示浏览器打开“保存对话框”来保存文件 - 万一一切正常。在这种情况下,navigateToURL对我有好处。如果出现错误,我遇到问题 – 2010-11-01 08:12:01
@Erik,您无法指示浏览器打开“保存对话框”。如果您使用适当的MIME发送文件,它将打开保存对话框。如有任何错误,请将MIME更改为文本并返回错误消息。 – 2010-11-01 08:27:10
多数民众赞成正是我所做的 - 我设置该文件的MIME类型,以便浏览器打开保存对话框。不过,我必须使用navigateToURL,不是吗? – 2010-11-01 08:40:24