phonegap api通话无效

时间:2012-10-26 13:17:17

标签: ajax cordova

我在localhost:3000上运行了一个rails api。在我的phonegap应用程序我试图通过api登录,但它给出一个错误(“错误”),并没有达到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);
        }
});    

编辑2 - 解决了

你必须使用本地IP例如。 192.168.2.2 并在ExternalHosts键中的Cordova.plist中添加主机。

1 个答案:

答案 0 :(得分:0)

这是因为在设备/模拟器上运行此代码时使用的是“localhost”,然后“localhost”指的是设备/模拟器本身,而不是包含rails API的Web服务器。您需要将“localhost”切换为服务器的IP地址或主机名。