You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter桌面应用无法连接localhost:8080的问题求助

Flutter桌面应用连接localhost:8080被拒绝的解决方案

排查步骤与修复方案

1. 验证后端服务状态

  • 先确认后端服务确实在localhost:8080运行:
    • Windows执行命令:netstat -ano | findstr :8080,查看是否有进程监听8080端口
    • macOS/Linux执行命令:lsof -i :8080
  • 用Postman或浏览器测试接口:发送POST请求到http://localhost:8080/HongLeong/LOGIN_REQUEST.do,携带UserName和Password参数,确认服务能正常响应。如果浏览器都访问不了,先修复后端服务问题。

2. 替换localhost为本地IPv4地址

Flutter桌面应用可能存在localhost解析异常(比如优先IPv6,但后端只监听IPv4),直接使用本地IPv4地址替代:

  • 查看本地IP:
    • Windows:ipconfig → 找到当前网络的IPv4地址(如192.168.1.105)
    • macOS/Linux:ip addr或ifconfig → 找到对应网卡的inet地址
  • 修改代码中的apiUrl:
apiUrl: 'http://192.168.1.105:8080/HongLeong/LOGIN_REQUEST.do',

3. 检查防火墙/安全软件拦截

  • 本地防火墙可能阻止Flutter应用访问8080端口:将Flutter的可执行文件(或整个项目的输出目录)加入防火墙白名单,或临时关闭防火墙测试。
  • 杀毒软件、安全工具也可能拦截网络请求,暂时禁用后重试。

4. 调整后端服务监听地址

确保后端服务不是仅监听127.0.0.1,而是监听所有网卡(0.0.0.0),这样才能接收来自桌面应用的请求:

  • 比如Spring Boot项目,在application.properties中添加:server.address=0.0.0.0
  • 其他后端框架参考对应配置,将监听地址设为0.0.0.0

5. 确认Flutter桌面环境配置

  • 确保已启用对应平台的桌面支持:
    • Windows:flutter config --enable-windows-desktop
    • macOS:flutter config --enable-macos-desktop
    • Linux:flutter config --enable-linux-desktop
  • 桌面端Flutter默认允许网络请求,无需额外权限配置,但如果使用第三方网络库,确认该库支持桌面平台。

内容的提问来源于stack exchange,提问作者JoshuaaMarkk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 23:48:23