Ajax phonegap api调用不工作
我有一个在localhost:3000上运行的rails api。在我的phonegap应用程序中,我试图通过api登录,但它给出了一个错误(“错误”),无法访问api。 跨域请求可能存在一些问题,但据说在移动设备中没有这样的事情。互联网正在运行 我的ajax:Ajax phonegap api调用不工作,ajax,cordova,Ajax,Cordova,我有一个在localhost:3000上运行的rails api。在我的phonegap应用程序中,我试图通过api登录,但它给出了一个错误(“错误”),无法访问api。 跨域请求可能存在一些问题,但据说在移动设备中没有这样的事情。互联网正在运行 我的ajax: $.ajax({ url: 'localhost:3000/api/v1/login', type: "POST", dataType: "json", data : {u
$.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中。这是因为在设备/仿真器上运行此代码时使用的是“localhost”,因此“localhost”指的是设备/仿真器本身,而不是包含rails API的web服务器。您需要将“localhost”切换到服务器的IP地址或主机名