Javascript &引用;在NPObject上调用方法时出错&引用;用于flex深度链接
我有一个flex应用程序托管在域a上,并通过域B的网页提供服务。我启用了跨域脚本;在域B的网页中,我有一行Javascript &引用;在NPObject上调用方法时出错&引用;用于flex深度链接,javascript,flash,flex4,Javascript,Flash,Flex4,我有一个flex应用程序托管在域a上,并通过域B的网页提供服务。我启用了跨域脚本;在域B的网页中,我有一行 params.allowscriptaccess = "always"; 在我的应用程序代码中 flash.system.Security.allowDomain("*"); 为了更好的衡量 flash.system.Security.allowDomain("keonehon.com"); // domain A ExternalInterface调用似乎有效;启动时,应用程序调用
params.allowscriptaccess = "always";
在我的应用程序代码中
flash.system.Security.allowDomain("*");
为了更好的衡量
flash.system.Security.allowDomain("keonehon.com"); // domain A
ExternalInterface
调用似乎有效;启动时,应用程序调用一个javascript函数,网页调用一个函数以传入参数
if (ExternalInterface.available){
ExternalInterface.call("SWFLoadComplete");
//lblMessage.text = "Data Sent!";
}
function SWFLoadComplete(){
callNewCarWithUser();
}
function callNewCarWithUser()
{
var user_id = document.getElementById('txtUserId').value;
var room_id = document.getElementById('txtRoomId').value;
getTheFlexApp().newCarWithUser(user_id, room_id);
}
这是正确的。所以,是的。看起来很好,不是吗
但是,深度链接不起作用,因为在URL中设置#state=___
flex参数(通过键入内容或使用后退按钮向后导航)会导致在history.js
的第435行抛出javascript错误
getPlayer().browserURLChange(flexAppUrl);
似乎存在某种跨域安全问题,尽管我在flash.system.security.allowDomain(“*”)一行中输入了flash.system.security.allowDomain代码>。通过比较两个具有相同html和swf文件的页面,您可以看到当同一个域与跨域时存在不同的行为,一种情况是跨域,另一种情况是跨域:
跨域:。
同一领域:
到底发生了什么事?您是否尝试过使用allowScriptAccess?(如果我没记错的话,这可能是区分大小写的)
如果这不起作用,那么查看更多代码或示例页面会有所帮助。您是否尝试过allowScriptAccess?(如果我没记错的话,这可能是区分大小写的)
如果这不起作用,那么查看更多代码或示例页面会有所帮助。我不确定这是否相关,但我经常在ExtJS中遇到这个错误,问题实际上是一个简单的语法错误(缺少括号))我不确定这是否相关,但是我经常在ExtJS中遇到这个错误,问题实际上是一个简单的语法错误,(缺少括号)