多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > web前端 > jscript > 如何解決AJAX的跨瀏覽器問題

如何解決AJAX的跨瀏覽器問題

來源:程序員人生   發布時間:2014-03-28 16:52:31 閱讀次數:4076次
一、解決在firefox中無法跨域訪問的問題

  AJAX從本質上講就是命名用XMLHttpRequest組件來向服務端發送HTTP請求,請接收相應信息。至于成功接收到響應信息后的操作,就和普通的Web客戶端程序類似了(一般用DOM將信息加到HTML組件中)。但問題就發生在了XMLHttpRequest組件上。雖然在大多數瀏覽器中(包括IE、Firefox等)都叫這個名子。使用方法也類似。但在進行某些操作時卻有不同的效果。

  就拿跨域訪問的問題來說。讓我們先看看如下的html中的javascript代碼:

  test.html


<html>
    <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript">  

// 獲得IE和firefox瀏覽器中的XMLHttpRequest對象
function getXMLHTTPRequest()
{
    var myRequest = null;
    if(window.XMLHttpRequest)   // firefox
    {        
        myRequest = new XMLHttpRequest(); 
    }
    else if(typeof ActiveXObject != "undefined")  // IE
    {              
        myRequest = new ActiveXObject("Microsoft.XMLHTTP");
    }          
    return myRequest;          
}

var myRequest;
function onReadyState()   // XMLHttpRequest處理異步訪問狀態時的事件
{
    if(myRequest.readyState == 4)   // 4表示成功獲得相應信息
    {              
        var msg = document.getElementById("msg");
        msg.value = myRequest.responseText             
    }
}
function getServiceText()
{     
    myRequest = getXMLHTTPRequest();
    if(myRequest)
    {         
        myRequest.onreadystatechange = onReadyState;      
        try 
        {
            myRequest.open( "post", "http://www.blogjava.net", true);
        }
        catch(exception)
        {
            var msg = document.getElementById("msg");
            msg.value = exception;  
         } 
         myRequest.send("test");
    }         
}

</script>
    </head>
    <body>
        <input id="msg" type="text" />
        <input type="button" value="信息" onclick="getServiceText()" />
    </body>
</html>

  如果在IE中訪問上面的html文件,url如下:

  http://localhost:8080/test.html

  會彈出一個對話框,大概意思是說您已經跨域訪問了,可能存在風險,是否繼續。如果繼續執行的話,仍然可以訪問http://www.blogjava.net。但是在firefox中卻更本無法訪問其它域的url,并且會拋出“調用方法 XMLHttpRequest.open 時權限不足”異常。解決的方法一般有兩種,一種是修改firefox的設置,在firefox的地址欄中輸入“about:config”,并找到signed.applets.codebase_principal_support,將其設為true。如圖1所示。

  

  圖1

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 欧美最猛黑人xxxx黑人猛交3p | 欧美激情videossex护士 | 亚洲最新在线视频 | 亚洲在线观看网站 | 欧美高清一区 | 性欧美18videos| 欧美精品v国产精品v | 欧美在线一级视频 | 国产福利网站 | 国产女人视频免费观看 | 亚洲精品国产成人99久久 | 亚洲精品国产自在久久老牛 | 最近免费中文字幕高清大全 | 久久亚洲伊人成综合人影院 | 精品中文字幕一区二区三区四区 | 另类黄色| 国产精品亚洲欧美 | 国产成人一区二区三区影院免费 | www.av片| 亚洲精品一区二区三区不卡 | 欧美综合自拍亚洲综合 | 欧美人成在线 | 欧日韩一区二区三区 | 在线观看一级毛片免费 | 校园春色中文字幕 | 婷婷在线五月 | 亚洲成人91 | 欧美视频三级 | 欧美在线一二三区 | 日韩欧美二区 | 九色精品在线 | 日本a一级毛片免费观看 | 最近最新中文字幕免费的一页 | 日本 欧美 在线 | 日韩亚洲欧美一区 | 成人国产在线视频在线观看 | 精品国产欧美一区二区最新 | 图片区小说区av区 | 午夜一级做a爰片久久毛片 午夜一区二区三区 | 亚洲一区亚洲二区亚洲三区 | 欧美另类亚洲一区二区 |