Flutter移动端连接Flask服务器失败:Connection refused问题排查
解决Flutter移动端无法连接Flask服务器的Connection Refused问题
以下是针对该问题的排查和解决步骤:
修正服务器绑定与访问地址
Chrome浏览器运行时,Flutter用localhost或127.0.0.1能访问本地Flask服务器,但移动端作为独立设备无法通过该地址访问电脑上的服务:- 启动Flask时必须绑定
0.0.0.0以允许局域网访问:if __name__ == '__main__': app.run(host='0.0.0.0', port=5000, debug=True) - 查找电脑的局域网IP(Windows用
ipconfig,Mac/Linux用ifconfig/ip addr),将Flutter中的请求地址替换为该IP,例如http://192.168.1.100:5000/api/xxx
- 启动Flask时必须绑定
确保网络环境一致
移动端必须和运行Flask服务器的电脑连接同一Wi-Fi局域网,否则无法建立连接。检查电脑防火墙设置
电脑防火墙可能拦截了Flask端口的入站请求,可临时关闭防火墙测试,或在防火墙上添加规则,允许Flask使用的端口(如5000)的入站连接。处理安卓明文HTTP限制
安卓9及以上默认禁止明文HTTP请求,若你的Flask服务器使用HTTP而非HTTPS:- 在AndroidManifest.xml的
<application>标签中添加android:usesCleartextTraffic="true" - 或创建network_security_config.xml配置文件,允许指定域名的明文访问。
- 在AndroidManifest.xml的
内容的提问来源于stack exchange,提问作者Jaya Kaviya
相关产品推荐
相关产品推荐

