2013-06-20 65 views
0

您好,我必須開發一個使用跨平臺技術(HTML,CSS,JAVASCRIPT)的移動應用程序,其中我需要將數據發送到服務器並從server.so接收數據。使用Ajax,所以我試着在給定的代碼下面。如何從移動web應用程序與服務器交換數據

<!DOCTYPE html> 
    <html> 
    <head> 
    <script src="jquery-1.10.1.min.js"></script> 
    <script> 
    $(document).ready(function(){ 
     $("button").click(function(){ 
     $("#div1").load("http://10.16.10.188/login/Hello.txt"); 
     }); 
    }); 
    </script> 
    </head> 
    <body> 

    <div id="div1"><h2>Let jQuery AJAX Change This Text</h2></div> 
    <button>Get External Content</button> 

    </body> 
    </html> 

上面的代碼工作時,我把這個html和文本文件放在wamp服務器上的同一個目錄中。但它不工作,當我把這個html文件保存在我的android資產文件夾和server.it上的文本文件沒有給出任何response.ould有人請幫助我做到這一點。非常感謝你

+1

您需要在服務器上啓用CORS:http://enable-cors.org –

回答

1

我能夠通過在下面給出的代碼中使用jsonp來解決問題。

<!DOCTYPE html> 
    <html> 
    <head> 
    <script src="jquery-1.10.1.min.js"> 
    </script> 
    <script> 
    $.ajax({ 
    url:"http://10.16.10.188/login/loginValidator.php", 
    dataType: "jsonp", 
    success:function(data,status){ 
    if(status=='success') 
    { 
    alert("Data: " + data.fullname + "\nStatus: " + status); 
    var val = data.fullname; 
    $("#imchanged").html(val); 
    } 
    } 
    }); 
    </script> 
    </head> 
    <body> 
    <div id="div1"><h2>Let jQuery AJAX Change This Text</h2></div> 
    <button id="imchanged">Get External Content</button> 
    </body> 
    </html> 

下面是我的html指向的loginValidator.php代碼。

<?php 
    $array = array(
    'fullname' => 'Jeff Hansen', 
    'address' => 'somewhere no.3' 
    ); 
    $data = json_encode($array); 
    echo $_GET['callback']."(".$data.")"; 
    ?> 

使用上面給出的代碼,我能夠從移動模擬器調用php文件並從服務器獲取響應。

相關問題