无法从flutter web读取.txt文件

问题描述

我正在尝试从 Flutter web 读取文本文件。当我在本地运行应用程序时它按预期工作。但是当我在 IIS 服务器中部署 web 应用程序时,服务器抛出 403 错误禁止)。是否 Flutter web(或任何 Web 应用程序)阻止读取文本文件,或者我可以配置 IIS 服务器以将此文本文件添加为例外吗? 如果在 Flutter web 中读取文件需要额外的步骤,请告诉我。

文本已放置在assets文件夹下,路径已映射到pubspec.yml文件

下面是我的 Flutter 医生:

[√] Flutter (Channel master,1.24.0-8.0.pre.291,on Microsoft Windows [Version 10.0.18362.1316],locale en-IN)
    • Flutter version 1.24.0-8.0.pre.291 at D:\Flutter
    • Framework revision c1042314a9 (3 months ago),2020-11-18 01:38:02 -0500
    • Engine revision 35a0b9fe68
    • Dart version 2.12.0 (build 2.12.0-50.0.dev)

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at C:\Users\Vasanth\AppData\Local\Android\sdk
    • Platform android-30,build-tools 30.0.3
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Android Studio (version 4.1.0)
    • Android Studio at C:\Program Files\Android\Android StudioFlutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-Flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[√] Connected device (2 available)
    • Web Server (web) • web-server • web-javascript • Flutter Tools
    • Chrome (web)     • chrome     • web-javascript • Google Chrome 88.0.4324.150

谢谢!

解决方法

显然,我找到了解决方法或可能是解决方法!

问题在于,main.dart 文件在本地 Web 的热重载时运行良好,但在使用“flutter build web”完成的发布构建期间代码/UI 更改并未反映出来。我不知道这是错误还是我遗漏了一些步骤。

所以我创建了一个新项目,复制了那里的所有文件,并且只将 main.dart 文件的内容复制到了新项目的 main.dart 文件中。

经过上述步骤后,它在发布版本中按预期工作!