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

Flutter Web运行报错:main.js因MIME类型不匹配无法执行求助

问题原因分析
  • 浏览器报错的核心是:请求main.js时,服务器找不到该文件,返回了HTML格式的404响应,导致MIME类型为text/html,不符合脚本文件的类型要求,触发严格MIME类型检查报错。
  • 查看你的web/index.html代码,发现存在两个无效脚本引用:
    1. main.js:Flutter Web编译后生成的入口脚本是main.dart.js,而非main.js
    2. jsapi.js:该文件未在提供的信息中提及存在,属于无效引用
解决方案

修改web/index.html中的脚本引用部分,移除不存在的main.js和jsapi.js,保留正确的main.dart.js以及PDF相关脚本即可,修改后的代码如下:

<!DOCTYPE html>
<html>
<head>
   <base href="/">

    <meta charset="UTF-8">
    <meta content="IE=Edge" http-equiv="X-UA-Compatible">
    <meta name="description" content="Test page">

    <!-- Favicon -->
    <link rel="icon" type="image/png" href="favicon.png"/>

    <title>Title page</title>
    <link rel="manifest" href="manifest.json">
</head>
<body>
  <script src="https://cdn.jsdelivr.net/npm/pdfjs-dist@2.12.313/build/pdf.js" type="text/javascript"></script>
  <script type="text/javascript">
    pdfjsLib.GlobalWorkerOptions.workerSrc = "https://cdn.jsdelivr.net/npm/pdfjs-dist@2.12.313/build/pdf.worker.min.js";
    pdfRenderOptions = {
      cMapUrl: 'https://cdn.jsdelivr.net/npm/pdfjs-dist@2.12.313/cmaps/',
      cMapPacked: true,
    }
  </script>

<script src="main.dart.js" type="application/javascript"></script>
</body>


</html>
验证步骤
  1. 保存修改后的index.html
  2. 重新运行Flutter Web应用:flutter run -d chrome
  3. 检查浏览器控制台是否还有MIME类型相关报错

内容的提问来源于stack exchange,提问作者Martijn van der Laan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 14:05:31