【发布时间】:2018-08-05 19:38:17
【问题描述】:
我正在开发一个项目,该项目允许 Android Built Ionic 版本 2 应用程序创建用户并通过 Django Rest API 对 Django 开发站点进行身份验证。
使用ionic serve 时,身份验证有效,这是通过使用跨域资源共享(作为谷歌浏览器插件安装)实现的。
当我尝试在实际的 android 设备上运行该应用程序时,使用该应用程序时身份验证失败(HTTP 404:找不到 URL),但可以通过同一设备的浏览器访问本地主机(通过 192.168.22.4 :80)。
详情:
我当前的私有 IP 地址是 192.168.22.4,开发站点目前正在通过 Wamp Apache 服务器在 localhost 端口 80 上提供服务。
这是我在 Ionic App(注册)上的 http 请求的代码片段:
let headers = new Headers();
headers.append('Content-Type','application/json');
this.http.post("http://192.168.22.4:80/api-user-create", JSON.stringify(this.postData), {headers: headers}).subscribe(res => {
console.log(res.json());
this.showAlert();
}, (err) => {
console.log(err);
});
应用解决方案:
这些是我尝试过但仍然无法连接到本地主机的步骤:
- 确保允许应用程序访问WiFi连接,验证我的IP地址是否正确,关闭我的防火墙甚至我的杀毒软件。我还在我的开发服务器上启用了网络发现。
- 使用代理服务器 (ngrok) 并编辑 Ionic 请求
- 在 Apache 服务器上启用 CORS 并编辑 Ionic 请求
- 编辑 Ionic 请求代码。我试图将 192.168.22.4:80 更改为:
192.168.22.4127.0.0.1:80127.0.0.1localhost:80localhost10.0.2.210.0.2.2:80
有人遇到过这个问题并解决了吗?
【问题讨论】:
标签: android http localhost ionic2