<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 59, comments - 244, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    web三種跨域請(qǐng)求數(shù)據(jù)方法

    Posted on 2013-01-11 13:19 penngo 閱讀(9693) 評(píng)論(0)  編輯  收藏 所屬分類: javascript
    以下測(cè)試代碼使用php,瀏覽器測(cè)試使用IE9,chrome,firefox,safari

    <!DOCTYPE HTML>
    <html>
    <head>
        <meta charset="UTF-8">
        <script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.2.min.js"></script>
        <script type="text/javascript" id="loadjson"></script>
        <script type="text/javascript">
        
    // 第一種
        // test1.php在服務(wù)器設(shè)置請(qǐng)?jiān)试S跨域(注意:IE9測(cè)試不通過)
        $.ajax({
               type: 'POST',
               url: 'http:
    //127.0.0.1:8081/test/test1.php',
               data: 'name=penngo',
               dataType: 'json',
               success: 
    function(msg){
                  $('#json').html(JSON.stringify(msg));
               }
            });

        
    /* 
        第二種JSONP:
        在客戶端動(dòng)態(tài)注冊(cè)一個(gè)函數(shù)function test(data),然后將函數(shù)名傳到服務(wù)器,服務(wù)器返回一個(gè)test({json})到客戶端運(yùn)行,這樣就調(diào)用客戶端的function test(data),從而實(shí)現(xiàn)了跨域,jquery已經(jīng)支持jsonp
        
    */
        
    // test2.php使用jsonp
        $.ajax({
               type: 'GET',
               url: 'http:
    //127.0.0.1:8081/test/test2.php?callback=?',
               data: 'name=penngo',
               dataType: 'jsonp',
               success: 
    function(msg){
                  $('#jsonp').html(JSON.stringify(msg));
               }
            });

        
    /*
        第三種,原理與jsonp類似,web頁面上調(diào)用js文件時(shí)不受跨域影響,
        只要利用<script>標(biāo)簽的src屬性,動(dòng)態(tài)加載js方式就能跨域,該方式為異步,通過testjs()回調(diào)
        
    */
        
    var testjs = function(msg){
             $('#js').html(JSON.stringify(msg));
        }
        $('#loadjson')[
    0].src = 'http://127.0.0.1:8081/test/test3.php?method=testjs&name=penngo';
        </script>

    </head>
    <body>
        header跨域:
        <div id="json">
            
        </div>
        <br/>
        jsonp跨域:
        <div id="jsonp">
            
        </div>
        <br/>
        js請(qǐng)求實(shí)現(xiàn)跨域:
        <div id="js">
            
        </div>
    </body>
    </html>

    服務(wù)器端處理
    test1.php
    <?php
        header("Access-Control-Allow-Origin: *");
        $name = $_REQUEST['name'];
        $result = array('success'=>1, 'name'=>$name);
        echo json_encode($result);
    ?>

    test2.php
    <?php
        $callback = $_REQUEST['callback'];
        $name = $_REQUEST['name'];
        $result = array('success'=>1, 'name'=>$name);
        $jsonData = json_encode($result);
        echo $callback . "(" . $jsonData . ")";
    ?>

    test3.php
    <?php
        $method = $_REQUEST['method'];
        $name = $_REQUEST['name'];
        $result = array('success'=>1, 'name'=>$name);
        $jsonData = json_encode($result);
        header('Content-type:application/x-javascript');
        echo "$method($jsonData);";
    ?>



    IE9測(cè)試,頁面輸出內(nèi)容
    header跨域: 
    jsonp跨域: 
    {"success":1,"name":"penngo"}
    js請(qǐng)求實(shí)現(xiàn)跨域: 
    {"success":1,"name":"penngo"}
    chrome,firefox,safari測(cè)試,頁面輸出內(nèi)容
    header跨域:
    {"success":1,"name":"penngo"}
    jsonp跨域:
    {"success":1,"name":"penngo"}
    js請(qǐng)求實(shí)現(xiàn)跨域:
    {"success":1,"name":"penngo"}
    主站蜘蛛池模板: 国产免费内射又粗又爽密桃视频| 91热久久免费精品99| 日韩精品久久久久久免费| 四虎永久免费影院在线| 亚洲综合在线观看视频| 免费一区二区无码视频在线播放| 在线免费观看国产| 亚洲av永久无码精品网址| 免费h片在线观看网址最新| 人人狠狠综合久久亚洲88| 美女黄网站人色视频免费| 国产精品免费看久久久久| 亚洲精品无AMM毛片| 黄页免费的网站勿入免费直接进入| 久久综合图区亚洲综合图区| 国产免费阿v精品视频网址| 青青草原亚洲视频| 特黄特色大片免费| 亚洲日本香蕉视频| 猫咪社区免费资源在线观看| 亚洲电影在线播放| 综合在线免费视频| 自拍日韩亚洲一区在线| 四虎免费影院ww4164h| 羞羞视频免费网站日本| 亚洲精品国产电影| 国产久爱免费精品视频| 99亚偷拍自图区亚洲| 成人在线视频免费| 亚洲AV无码专区国产乱码不卡| 亚洲av无码无在线观看红杏| 凹凸精品视频分类国产品免费| 亚洲一区二区三区免费在线观看| 国产精品视频全国免费观看| 亚洲精品国产精品乱码不卡√| 久久99热精品免费观看动漫| 亚洲一级二级三级不卡| 亚洲午夜爱爱香蕉片| 在线观看免费av网站| 国产在线精品免费aaa片| 亚洲午夜国产精品|