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

Flutter应用仅禁用杀毒软件可运行 报SocketException 10013错误

故障场景

Windows环境下进入桌面Flutter项目路径执行flutter run,选择Edge作为Web调试设备时触发web开发服务器绑定失败问题,手动指定端口、修改主机名均无法解决,仅禁用杀毒软件时可正常启动应用。
核心报错日志如下:

admin@DS1 MINGW64 ~/Desktop/app
$ flutter run
Multiple devices found:
Windows (desktop) • windows • windows-x64    • Microsoft Windows [Version 10.0.22000.739]
Chrome (web)      • chrome  • web-javascript • Google Chrome 102.0.5005.115
Edge (web)        • edge    • web-javascript • Microsoft Edge 102.0.1245.44
[1]: Windows (windows)
[2]: Chrome (chrome)
[3]: Edge (edge)
Please choose one (To quit, press "q/Q"): 3
Launching lib\main.dart on Edge in debug mode...
Failed to bind web development server:
SocketException: Failed to create server socket (OS Error: An attempt was made to access a socket in a way forbidden by its access permissions.
, errno = 10013), address = localhost, port = 0
#0      _NativeSocket.bind (dart:io-patch/socket_patch.dart:996:7)
<asynchronous suspension>
#1      WebAssetServer.start (package:flutter_tools/src/isolated/devfs_web.dart:205:22)
<asynchronous suspension>
#2      WebDevFS.create (package:flutter_tools/src/isolated/devfs_web.dart:732:22)
<asynchronous suspension>
#3      ResidentWebRunner.run.<anonymous closure> (package:flutter_tools/src/isolated/resident_web_runner.dart:285:25)
<asynchronous suspension>
#4      asyncGuard.<anonymous closure> (package:flutter_tools/src/base/async_guard.dart:111:24)
<asynchronous suspension>

Failed to bind web development server:
SocketException: Failed to create server socket (OS Error: An attempt was made to access a socket in a way forbidden by its access permissions.
, errno = 10013), address = localhost, port = 0
故障根因

报错errno = 10013是Windows系统的权限类套接字拦截错误,并非端口被占用,触发原因是杀毒软件的网络防护、端口防护规则默认拦截了Dart/Flutter进程在localhost回环地址上的动态端口绑定行为,部分场景下是安全软件改写了Winsock系统配置,导致即使临时退出安全软件,拦截规则仍会生效。

无需关闭杀毒软件的解决步骤
  • 给Flutter相关进程添加安全软件白名单:需要加白的路径包含三类:一是Flutter SDK目录下bin文件夹内的所有可执行文件,重点放行dart.exe、flutter.exe;二是本地安装的Edge浏览器主程序msedge.exe;三是当前Flutter项目下的.dart_tool缓存目录。加白时需同时允许上述进程在127.0.0.1本地回环地址上的TCP端口绑定、访问权限,不要限制其本地网络行为。
  • 重置Winsock系统配置:以管理员身份打开命令提示符,执行命令netsh winsock reset,执行完成后重启电脑,清除安全软件写入的套接字拦截规则,修复系统网络层权限配置。
  • 固定调试端口避开拦截范围:启动Web调试时不要使用默认的随机端口(port=0代表系统随机分配端口,极易触发安全软件的动态端口拦截规则),显式指定固定端口启动,命令示例:flutter run -d edge --web-port=8080 --web-hostname=127.0.0.1。指定端口前先以管理员身份打开PowerShell执行netsh interface ipv4 show excludedportrange protocol=tcp,查看当前系统被Hyper-V、安全软件预留的端口段,选择不在排除范围内、1024以上的端口作为固定调试端口。
  • 添加本地端口放行规则:在杀毒软件的防火墙配置中,新增一条本地回环规则,允许127.0.0.1地址上你指定的调试端口的所有入站、出站连接,避免端口级防护规则拦截绑定请求。

注意:本地调试不要将--web-hostname参数设置为0.0.0.0,该配置会让调试服务监听所有网卡地址,会触发绝大多数安全软件的公网服务暴露风险拦截规则。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 16:06:27