老孟,慕白兄,还有其他ajax高手请进!
我想写一个方法调用新浪的天气预报。
在IE上,成功执行,但是在firefox上,总是报错:
“调用方法XmlHttpRequest.open时权限不足”
怎么办???
关键句代码如下:
xmlhttp.open( "GET ", "http://php.weather.sina.com.cn/search.php?city= "+city,true);
[解决办法]
这是因为firefox安全性强,不允许跨域调用。
Firefox 要取消XMLHttpRequest的跨域限制的话,
第一是从 about:config 里设置 signed.applets.codebase_principal_support = true; (地址栏输入about:config 即可进行firefox设置)
第二就是在open的代码函数前加入类似如下的代码:
try { netscape.security.PrivilegeManager.enablePrivilege( "UniversalBrowserRead "); } catch (e) { alert( "Permission UniversalBrowserRead denied. "); }
[解决办法]
后台代码里通过xmlhttprequest获取天气代码,再用ajax发布到前台如何?
这样可以规避权限问题