我有一个使用Flex 4.6和Air 3.5构建的桌面AIR应用程序。我使用navigateToURL在默认浏览器中启动URL,工作正常:
var request : URLRequest = new URLRequest ( "http://localhost:8890/test.html" );
var urlVariables : URLVariables = new URLVariables ();
urlVariables['activity'] = "xyz.json";
request.data = urlVariables;
request.method = URLRequestMethod.GET;
navigateToURL(request, "_self");
该应用程序允许用户构建一些JSON内容(xyz.json),然后在测试装备(test.html)中对其进行测试。
第二次及以后我这样做,我得到一个新标签(我正在使用Chrome)。我想要的是它出现在与最后一个相同的标签中。请注意,我使用了“_self”。如果我传递任何字符串,我会得到相同的结果。
任何帮助将不胜感激。感谢。
答案 0 :(得分:0)
我不相信有可能强制浏览器重用相同的标签 - 这将是浏览器行为,而不是AIR行为(即:您将更改浏览器设置中的预期行为;例如:始终在新标签中打开内容)。< / p>
答案 1 :(得分:0)
我相信当您调用NavigateToURL()时,它会从桌面应用程序中强制启动新窗口(容器)。
如果可以,您可以在服务器上创建一个单独的“接收者”页面来接收数据(对用户不可见)然后启动一个带有NavigateToURL的“查看者”页面,其中包含一个ajax脚本来检查和更新收到的数据来自“接收者”页面。
我会查看URLLoader()类。我多次使用它来处理我的Web服务脚本。