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

浏览器ES6模块的import语句能否使用绝对URL作为模块导入地址?

浏览器环境ES6模块绝对URL导入问题解答

核心结论

现代浏览器的原生ES6模块规范完全支持使用HTTP/HTTPS协议的绝对URL作为导入地址,你给出的示例代码可以直接正常运行:

import something from 'https://example.com/js/lib/es6_module.mjs';

浏览器端使用前提

要让这种导入方式正常生效,只需满足两个条件:

  • 引入入口模块的script标签必须添加type="module"属性,否则浏览器不会将脚本识别为ES模块,无法解析import语法
  • 被导入的远程模块资源需要符合要求:
    • 服务器返回的响应头Content-Type为合法的JavaScript MIME类型,通常为application/javascript
    • 如果导入的是跨域资源,目标服务器需要配置正确的CORS响应头,允许当前站点访问该资源

Node.js端差异说明

你提到的Node.js环境报错属于默认行为:

Uncaught Error [ERR_UNSUPPORTED_ESM_URL_SCHEME]: Only file and data URLs are supported by the default ESM loader. Received protocol 'https:'

Node.js默认的ESM加载器仅支持file:和data:协议的URL,原生不支持远程HTTP/HTTPS资源导入。如果需要在Node.js中使用类似能力,需要自定义ESM加载器实现,不属于默认支持的特性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 04:15:03