FF下处理AJAX跨域问题

本文介绍在Firefox中处理跨域AJAX请求的方法。包括通过代码设置安全权限和手动配置浏览器权限选项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在同一服务器下进行AJAX时,FF和IE处理是一样的,但是涉及到跨域访问时,FF的处理和IE存在不同,FF需要进行一些安全级别的权限设置。


(1)在代码中进行权限设置

if(window.XMLHttpRequest) {
try
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
}
catch (exception)
{
alert(exception);
}
}


注意这段代码必须写在创建之后:

function createDeclareXMLHttpRequest(){
try{
xmlHttpDeclare=new XMLHttpRequest();
}catch(e){
try{
xmlHttpDeclare = new ActiveXObject("Microsoft.XMLHTTP");
}catch(e){
alert("你的浏览器不支持XMLHttpRequest");
return;
}
}
}

function declareSend(){
createDeclareXMLHttpRequest();
if(window.XMLHttpRequest) {
try
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
}
catch (exception)
{
alert(exception);
}
}
xmlHttpDeclare.onreadystatechange = declareHandleStateChange;
xmlHttpDeclare.open('POST',url,true);
xmlHttpDeclare.send(null);
}


在这里,我把这段安全权限这段代码放在createDeclareXMLHttpRequest()方法中就是错误的,为什么错,还不太清楚。

(2)设置FF权限
这里,执行上述代码基本可以成功,FF会告诉用户需要权限才能继续进行获取信息,所以用户需要手动进行设置权限了:在firefox的地址栏中输入“about:config”,并找到signed.applets.codebase_principal_support,将其设为true。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值