2012-10-26 54 views
0

我有一個Rails API的本地主機上運行:3000。在我的phonegap應用程序中,我試圖通過api登錄,但它給出了一個錯誤(「錯誤」),並沒有達到API。 可能會有一些問題,跨域請求,但表示,在手機有沒有這樣的事情。互聯網正在工作。PhoneGap的API調用不工作

我的ajax:

$.ajax({ 
     url: 'localhost:3000/api/v1/login', 
     type: "POST", 
     dataType: "json", 
     data : {username:"demo",password:"demo"}, 
     success: function(data) { 
      navigator.notification.alert("ok"); 
     }, 
     error: function(xhr, textStatus, errorThrown) { 
       console.log("Error status " + status); 
     } 
});  

EDIT 2 - 解決

你必須使用本地IP如。 192.168.2.2 並在ExternalHosts項中添加主機在Cordova.plist。

回答

0

這是因爲你使用的是「本地主機」當你在一個設備/模擬器,然後運行該代碼「本地主機」是指設備/模擬器本身,而不是包含您的軌道API的Web服務器。您需要將「localhost」切換到您的服務器的IP地址或主機名。

+0

現在我試着用http://192.168.2.2:3000/api/v1/login並給出unautorized –

+0

權利,如果你是列入白名單IP它爲你工作? –