Maj*_*ajd 4 apache api xampp phpmyadmin flutter
我正在物理 Android 设备上开发 Flutter 应用程序,我对网络了解不多,并且在使用从手机到笔记本电脑上的本地数据库的 API 时遇到问题。我查看了这篇文章中的所有答案
无法从 Android 应用程序连接到 localhost API
似乎没有什么对我有用,我在 XAMPP 上使用 Apache 服务器,并且 API 在笔记本电脑上运行得很好(127.0.0.1:8000/api/Students),但是当我尝试从手机访问它时却不起作用工作(我用我从 ipconfig 获取的笔记本电脑的 IP 替换了 127.0.0.1)
当我尝试使用laptop-IP:80从手机访问服务器时,它通常与laptop-IP:80/phpmyadmin XAMPP仪表板访问相同, 但仅当我的手机连接到笔记本电脑移动热点时,当我连接两个设备时到同一个WIFI网络,显示无法访问:
但是当我尝试laptop-IP:8000/api/Students 时,会发生这种情况:
我尝试修改Apache httpd.conf:
#听12.34.56.78:80
Listen 8000 <-- Added this
Run Code Online (Sandbox Code Playgroud)
据我了解,这使得服务器侦听端口 8000,但我遇到了同样的问题
注意:所有图片都显示了我在手机 Chrome 浏览器上使用 API 的尝试
您需要对 URL 进行一些调整才能在设备中访问它,因为localhost只有机器知道,而不是运行应用程序的设备知道。
不同设备的 url 不同
static const baseUrl = "http://10.0.2.2:8000";
Run Code Online (Sandbox Code Playgroud)
static const baseUrl = "http://localhost:8000";
Run Code Online (Sandbox Code Playgroud)
adb reverse tcp:8000 tcp:8000
Run Code Online (Sandbox Code Playgroud)
现在你的请求会像这样:
get('$baseUrl/api/Students');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2932 次 |
| 最近记录: |