【发布时间】:2011-06-19 03:50:31
【问题描述】:
我需要使用squeezebox(结合mootools 1.2.4)打开一个链接。
因此,我创建了一个 test.js(其中包含一个打开挤压箱的函数)、一个 Test.mxml 应用程序(包含一个调用 js 函数的按钮),并在 html 页面中添加了所有脚本。
test.js:
function openSqueezeBox(url){
alert("Tentative d'ouverture de: " + url);
SqueezeBox.initialize();
SqueezeBox.open(url);
};
Test.mxml:
<mx:Script>
<![CDATA[
private function btnHandler1(e:MouseEvent):void{
ExternalInterface.call("openSqueezeBox", 'http://www.google.com');
}
]]>
</mx:Script>
<mx:HBox>
<mx:Button label="google" click="btnHandler1(event)"/>
</mx:HBox>
当启动应用程序并单击按钮时,我确实看到了警报窗口。但是,squeezebox 没有打开。我收到 407 错误:需要代理身份验证。
我确实在工作场所的代理后面,但是该应用程序是在已经过身份验证的浏览器窗口中启动的......
我现在真的不知道该怎么做才能让它工作>_
非常感谢您的宝贵时间 ;)
问候,
BS_C3
【问题讨论】:
-
不确定。这个squeezeBox现在有点过时了,甚至不使用Class并且设置为带有自己的伪构造函数的单例......你有任何可以捕获的异常吗?你捆绑了哪个版本的 mootools?
-
mootools 1.2.4。除了萤火虫控制台中的 407 错误之外,我没有收到任何异常。
-
所以它正在打开一个新会话......奇怪。当你尝试使用采用函数并从你的 dom 中获取一些东西时会发生什么(如果你有的话)?
SqueezeBox.open($('welcome'), {handler: 'adopt'});而不是做 ajax - 同样,Squeezebox.open在内部调用this.initialize(),因此可能不需要它。请记住,打开 google.com 可能会受到 ajax 的 XSS / 同源策略限制,或者 flex 不受此限制?
标签: javascript flex3 mootools http-status-code-407 squeezebox