我试图在模拟器中的localhost中托管的Arrow执行httpRequest。以下是我从API Docs获得的代码:
var xhr = Ti.Network.createHTTPClient({
onload: function onLoad() {
alert("Loaded: " + this.status + ": " + this.responseText);
},
onerror: function onError() {
alert("Errored: " + this.status + ": " + this.responseText);
}
});
xhr.open("GET","http://127.0.0.1:8080/api/externa");
var authstr = 'Basic ' + Ti.Utils.base64encode('QM59cPRalcyN6eDMLqiu8HmJJ+47kLOi:');
xhr.setRequestHeader("Authorization", authstr);
xhr.send();
我收到状态= 0,表示警报显示:
错误:0:
如果我在移动网络中运行代码或使用节点版本代码来请求相同的API,一切都很顺利,但是使用模拟器它并不是。我的防火墙已关闭,我使用的是Windows 7。
答案 0 :(得分:0)
是的,这是正确的,模拟器正在访问他自己的localhost,正确的方法是使用http:10.0.2.2:8080地址