为什么本地HTML、JS、JSON文件会出现跨域问题?-运维笔记-李洋博客

温馨提示:这篇文章已超过67天没有更新,请注意相关的内容是否还可用!

跨域问题的本质是浏览器的 同源策略(Same-Origin Policy) 限制。即使文件都在本地,以下情况也会触发跨域:

1. 文件协议不同(核心原因)

当直接用浏览器打开本地 HTML(file:///C:/project/index.html)时,源(Origin)会被视为 null。

如果此 HTML 中的 JS 尝试通过 fetch 或 XMLHttpRequest 加载同目录的 JSON 文件(file:///C:/project/data.json),浏览器会判定为跨域请求(源 null → file:// 协议),导致失败。

即使协议相同,如果 HTML 文件和 JSON 文件的目录路径不同(例如:file:///C:/project1/index.html 和 file:///C:/project2/data.json),也会触发跨域。

浏览器禁止从 file://协议发起网络请求(包括本地 JSON),因为本地文件可能包含敏感信息,同源策略会阻止 JS 随意读取它们。

为什么本地HTML、JS、JSON文件会出现跨域问题?-运维笔记-李洋博客

通过工具启动一个本地 HTTP 服务器,使所有文件通过 http://localhost 协议访问:

npx http-Server -p 5500  # 安装后访问 http://localhost:5500

Python 内置服务器:

python -m http.server 5500  # 访问 http://localhost:5500

⚠️ 临时绕过(仅开发环境)

通过浏览器启动参数禁用安全策略:

// 在 http://localhost:5500 下运行的 HTML 文件fetch('data.json')  .then(response => response.json())  .then(data => console.log(data));

关键结论

浏览器同源策略不会因为文件在本地就放宽限制。本地开发务必使用 HTTP 服务器(如 http-server 或 Live Server),这是最安全、规范的解决方案。直接双击打开 HTML 文件必然触发跨域问题。

IT老李提供个人和企业网站建设、网站运维、定制Z-Blogphp主题模板技术服务以及SEO排名优化的原创独立博客网站(网址:www.itlaoli.com)


本文地址: https://www.earthnavs.com/jishuwz/6f0663ec2cf96eaaaa94.html
全局中部横幅
程序员导航

黑客街一家做网络安全爱好者导航的web安全网站!专注Hack站点收集,为广大网络安全爱好者提供网站导航,为小白提供黑客入门网站的安全站点收集

甜虾剧场

《甜虾剧场》是一款能让您在电脑端看短视频的休闲产品。你可以看到世界各地奇妙有趣的瞬间,享受工作和生活中的每一刻精彩!

腾讯云运营活动

腾讯云活动汇聚了腾讯云最新的促销打折、优惠折扣等信息,你在这里可以找到云服务器、域名、数据库、小程序等等多种不同产品的促销活动,还有各种产品的免费试用哦。

Google

全面、及时的新闻报道,Google新闻为您汇集来自世界各地的新闻来源。

ARISTA456:

ARISTA456adalahsitusslotyanglagingeri,dimanadalam1xspinpemainbisalangsungWD12jutarasakankeseruandankeuntunganluarbiasahanyadiARISTA456.

欢迎来到

Steamistheultimatedestinationforplaying,discussing,andcreatinggames.

新闻频道

中华网新闻频道提供热点突发、深度报道、国内新闻、国际新闻、社会新闻、专题报道、时事评论、图片报道、军事、历史等全面且即时有深度的资讯内容。

新华网

中国主要重点新闻网站,依托新华社遍布全球的采编网络,记者遍布世界100多个国家和地区,地方频道分布全国31个省市自治区,每天24小时同时使用6种语言滚动发稿,权威、准确、及时播发国内外重要新闻和重大突发事件,受众覆盖200多个国家和地区,发展论坛是全球知名的中文论坛。

合肥氩气

合肥普诺邦低温技术有限公司是一家致力于低温管道设计、研发、安装、维修及技术服务、氦气、液氮、液氩、液氦、液氧、高纯氮气、高纯氩气、高纯氧气、高纯二氧化碳、丙烷、混合气及各种高纯气体、稀有气体及各种多元混合气体生产的标准化公司

【简数采集器】免费的在线网页数据采集软件

【简数采集器】是免费的、在线的网页文章采集器工具软件,功能强大,操作简单,支持AI写作和AI处理数据。云采集无需下载软件,浏览器直接登录使用;不用手写规则(智能识别+点选生成);可发送到CMS网站、数据库,导出Excel等。网页文章采集抓取工具软件首选。

QQ空间

QQ空间(Qzone)是拥有数亿用户的社交网络,是QQ用户的网上家园,是腾讯集团的核心平台之一。您可以玩游戏、玩装扮、上传照片、写说说、写日志,黄钻贵族还可以免费换装并拥有多种特权。QQ空间同时致力于建设腾讯开放平台,和第三方开发商、创业者一起为亿万中国网民提供卓越的、个性化的社交服务。

牛蛙资源网

牛蛙资源网,每天准时更新全网精品资源免费分享平台,专注网络活动线报,技术教程,自学教程,网站源码,技术导航,绿色资源,包括绿色软件资源,办公资源,游戏图文攻略资源等,聚集了全网资源,技术,教程,分享平台!