无法连接到Tianium studio的android应用程序中的JSON服务
我正在尝试使用id和密码的登录应用程序。当我单击logi按钮时,它将通过JSON连接到本地服务器。使用指定的URL。代码为无法连接到Tianium studio的android应用程序中的JSON服务,android,titanium,Android,Titanium,我正在尝试使用id和密码的登录应用程序。当我单击logi按钮时,它将通过JSON连接到本地服务器。使用指定的URL。代码为 var loginReq = Titanium.Network.createHTTPClient(); loginReq.onload = function() { var json = this.responseText; alert(json); var response = JSON.parse(json);
var loginReq = Titanium.Network.createHTTPClient();
loginReq.onload = function()
{
var json = this.responseText; alert(json);
var response = JSON.parse(json);
if (response.data.status == "success")
{ alert("Welcome ");
}
else
{ alert(response.data.status);
}
};
loginReq.onerror = function(event)
{
alert(event.toSource());
//alert("Network error");
};
loginBtn.addEventListener('click',function(e)
{ if (username.value != '' && password.value != '')
{
var url = 'our local url action=login&id='+username.value+'&pwd='+password.value;
loginReq.open("POST",url);
loginReq.send();
}
else
{
alert("Username/Password are required");
}
});
这里它没有连接我们的URl..所以它进入了loginReq.onerror函数…而不是loginReq.onload函数..为什么它会抛出运行时错误。。同样的代码也适用于Iphone。。
运行时错误为。。
TypeError:无法调用对象{'source':[Ti.Network.HttpClient]中的属性toSource,指定的url}不是函数,而是对象
这就是错误所在。请告诉我…显然,android中不存在toSource()函数,因为它是一个对象。尝试调试并查看对象事件包含的内容
您可以通过在警报行上方添加一行并向其添加调试行来实现这一点
在调试模式下查看所有变量“toSource()”不是任何一种平台的文档化函数,我在Tianium Mobile的源代码中也没有看到它。如果你没有在iOS上看到错误,我猜这是因为没有调用错误处理程序。也许您的模拟器或设备没有internet访问权限,而您的iOS模拟器或设备有
无论如何,HTTPClient中的错误处理通常如下所示:
loginReq.onerror = function(e)
{
Ti.API.info("ERROR " + e.error);
alert(e.error);
};