phpmyadmin 从Android设备访问localhost API

hi3rlvi2  于 2023-01-26  发布在  PHP
关注(0)|答案(1)|浏览(173)

我正在一台安卓设备上开发一个Flutter应用程序,我对网络了解不多,而且我在使用手机上的API到笔记本电脑上的本地数据库时遇到了麻烦。
Cannot connect to localhost API from Android app
似乎什么都不适合我,我在XAMPP上使用Apache服务器,API在笔记本电脑上运行良好(127.0.0.1:8000/api/Students),但当我尝试从电话访问它时,它不工作(我将127.0.0.1替换为我从ipconfig中获得的笔记本电脑的IP)
XAMPP control panel
当我尝试使用laptop-IP:80从手机访问服务器时,它通常与laptop-IP:80/phpmyadmin XAMPP dashboard相同,但只有当我的手机连接到笔记本电脑移动的热点时,当我将两个设备连接到同一个WIFI网络时,它显示无法访问:
但当我尝试laptop-IP:8000/API/Students时,发生了这种情况:
this site can't be reached
我尝试修改Apache httpd.conf:

听12.34.56.78:80

Listen 8000      <-- Added this

据我所知,这会使服务器侦听端口8000,但我仍然遇到同样的问题
注意:所有的图片都显示了我尝试在手机的Chrome浏览器上使用API

8xiog9wr

8xiog9wr1#

你需要对URL做一些调整才能在设备中访问它,因为localhost只为机器所知,而不是运行应用程序的设备。
不同设备的URL不同
1.仿真器
1.真实的的电话(带usb调试)

1.模拟器
static const baseUrl = "http://10.0.2.2:8000";
2.真实器械
static const baseUrl = "http://localhost:8000";
  • 此外,您还需要在cmd
adb reverse tcp:8000 tcp:8000

中运行这些命令

现在,您的请求如下所示:

get('$baseUrl/api/Students');

相关问题