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

本地Chrome运行Flutter遇gstatic canvaskit CORS错误,Linux运行正常

解决Flutter Web在Chrome中运行的Canvaskit CORS错误

问题原因

这个请求是Flutter Web自动发起的——Canvaskit是Flutter Web默认采用的Skia Web渲染引擎,框架会自动从Google的CDN拉取对应的wasm文件,你的代码里自然找不到相关URL。而Linux桌面端用的是本地Skia库,不需要网络拉取资源,所以没有这个问题。

解决方法

1. 本地开发临时绕开CORS(仅用于开发环境)

启动Chrome时禁用Web安全检查,命令如下:

  • Windows:
    chrome.exe --disable-web-security --user-data-dir="C:/ChromeDevSession"
    
  • Linux:
    google-chrome --disable-web-security --user-data-dir=/tmp/chrome_dev
    
  • macOS:
    open -n -a "Google Chrome" --args --disable-web-security --user-data-dir=/tmp/chrome_dev
    

注意:这个方式会关闭Chrome的安全防护,仅用于开发测试,不要用这个窗口浏览正常网站。

2. 配置Flutter使用本地Canvaskit资源

完全避免从CDN拉取,改用本地文件:

  1. 下载对应版本的Canvaskit包(版本号就是你报错URL里的7572fe5b922634eb20b8ec4ad65646e6a356feb4),解压后把所有文件放到项目的web/canvaskit目录下。
  2. 在pubspec.yaml中添加资源配置:
    flutter:
      assets:
        - canvaskit/
    
  3. 启动项目时指定本地资源路径:
    flutter run -d chrome --dart-define=FLUTTER_WEB_CANVASKIT_URL=./canvaskit/
    

3. 检查网络代理设置

如果你的机器开启了代理工具(比如VPN、翻墙插件、本地代理),可能会拦截gstatic的请求,导致返回的响应缺失CORS头。尝试关闭代理,或者将gstatic.com加入代理的白名单。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 22:57:24