在vs2008中没有错误,但在Chrome中错误=XMLHttpRequest无法加载文件:只有HTTP支持跨源请求

no error in vs2008 but in Chrome Error= XMLHttpRequest cannot load file: Cross origin requests are only supported for HTTP

本文关键字:只有 文件 HTTP 加载 支持 请求 XMLHttpRequest 有错误 vs2008 但在 Chrome      更新时间:2023-09-26

我得到了常见的Chrome错误XMLHttpRequest无法加载文件:只有HTTP支持跨源请求

然而,问题是我正在vs2008中创作我的html/jScript内容。在IDE中,我可以右键单击并选择"在浏览器中查看"选项。从那里,它在我的默认浏览器(Chrome)中打开代码,我用来打开文件的功能非常好适用于Chrome浏览器如果我转到项目文件夹并尝试在Chrome中直接打开html文件,那么我尝试打开该文件的jScript将失败,并显示错误。

我意识到这是一个经常出现的问题,但在谷歌搜索和查看堆栈后,我不能说我以前见过这种特殊的味道。此外,我还没有包含任何代码,因为代码似乎是功能性的,而不是错误的来源(就像我说的,当通过vs2008部署时,它在Chrome中运行得很好)。

我可以肯定地说,我对视觉工作室项目没有做任何特别的事情。它会提示您选择启用web调试(我答应了),但仅此而已。项目文件夹包含一个index.html文件、大约5.js文件和IDE生成的web.config文件。Web.config文件有点大,但如果您认为有帮助,我可以将其包含在内。

有人知道vs2008可以做些什么来让我的html/jScript项目正常运行吗?谢谢你的帮助。

Chrome中的XMLHttpRequest不支持访问本地文件(file://)。一个解决方案是在本地运行HTTP服务器。

当您在VS中调试时,它会启动IIS,这就是为什么它在这种情况下运行时不会出错。

"file"协议几乎只考虑任何跨源请求(很可能是因为它没有端口,也没有域主机)。

如果您试图创建一个指向非http的XHR,那么它显然会失败。这就是你在这里看到的。