Flutter web:加载资源失败:net::ERR_NAME_NOT_RESOLVED

Flutter web : Failed to load resource: net::ERR_NAME_NOT_RESOLVED

Flutter web 仅在 chrome 中显示 empty 白页,我在 console 中得到 Failed to load resource: net::ERR_NAME_NOT_RESOLVED chrome 通过使用 inpect 。即使在网络上使用 flutter counter 应用程序也可以重现。

我有Flutter Channel stable 2.0.2and Android Studio (version 4.1.0)。 它在模拟器中运行良好。 我该如何解决这个问题?

我尝试在 cmd 中执行以下命令,但仍然有问题:

ipconfig /flushdns
ipconfig /renew
ipconfig /registerdns

我 运行 在为应用程序提供服务时遇到了这个问题,而不是从我的网络服务器的根目录。 我必须在 web/index.html 中指定 <base> 标签,然后它对我有用。

如果你连接到互联网,它会工作并且不会发生错误但是这个错误发生在最新版本(2.0.2)的flutter web Offline模式下,因为CanvasKit不会自动捆绑 离线 开发。所以这些指令被 flutter team:

提到

让它工作离线:

  • 在 web/ 目录下的任意位置下载(或构建)CanvasKit 你的项目。
  • 关注these instructions并指定FLUTTER_WEB_CANVASKIT_URL 指向 /path/to/bundled/canvaskit/(如果它在 web/ 那么我认为它只是 /).
  • 在 pubspec.yaml (instructions)
  • 中包含所有必要的字体

这是它的 Makefile

webrun:
    wasmLocation="$(shell grep canvaskit-wasm build/web/main.dart.js | sed -e 's/.*https/https/' | sed -e 's/\/bin.*/\/bin/' | uniq)"; \
    curl -o ./web/canvaskit.js "$$wasmLocation/canvaskit.js"; \
    curl -o ./web/canvaskit.wasm "$$wasmLocation/canvaskit.wasm"; \
    flutter run -d chrome --release --web-renderer=canvaskit --dart-define=FLUTTER_WEB_CANVASKIT_URL=./