Chrome 中的“Access-Control-Allow-Origin 不允许使用 Origin null”。为啥? [复制]
Posted
技术标签:
【中文标题】Chrome 中的“Access-Control-Allow-Origin 不允许使用 Origin null”。为啥? [复制]【英文标题】:"Origin null is not allowed by Access-Control-Allow-Origin" in Chrome. Why? [duplicate]Chrome 中的“Access-Control-Allow-Origin 不允许使用 Origin null”。为什么? [复制] 【发布时间】:2011-07-10 14:08:15 【问题描述】:我正在开发一些 javascript 以在我的 PC 上本地运行。我正在使用 jQuery CSV 插件 (http://plugins.jquery.com/project/csv) 将 csv 文件加载到 javascript 数组中。脚本很简单:
$(function()
$.get("file.csv", function(data)
stuff = $.csv()(data);
)
)
在 Firefox 中它可以正常工作,但在 Chrome 中它显示“Access-Control-Allow-Origin 不允许 Origin null”。那是什么意思?我找到了各种关于与此错误相关的跨服务器内容的线程,但我只是在处理本地文件。
【问题讨论】:
我遇到了同样的问题。使用本地服务器很容易解决,例如:XAMPP、WAMP 等。无需特殊技巧。 【参考方案1】:Chrome 不认为任何两个本地文件之间存在任何共同关系。
您可以使用“--allow-file-access-from-files”选项启动它,告诉它您不同意。
感谢升天大师尼克·克拉弗(Nick Craver)在我前段时间问基本相同的问题时提供的信息。
【讨论】:
嗯。我试试你说的,但仍然得到同样的错误。也许我启动 Chrome 错误? 确保您已关闭所有正在运行的 chrome 实例,否则它不会接受更改。所以只要确保进程列表中没有 chrome.exe @user1028100 我不知道是否无法从命令行在 MacOS 上启动 Chrome 或者该选项不起作用。 我可以使用命令“/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --allow-file-access-from-files”打开带有该标志的 chrome。我在 OSX 10.7.4 (lion) 上。见superuser.com/questions/157484/… 感谢 chrismarx,如果您在开发工作中深陷其中,应该指出这一点。这很简单,但如果你忘记了它,那真的会让你一头雾水。【参考方案2】:出于某种不清楚的原因,这就像跨域(每个浏览器在此问题上的行为都有些不同,您甚至可以尝试 IE 并查看结果)。您应该尝试通过 Web 服务器运行它,并给它一个绝对路径,因为 javascript 在本地运行。
【讨论】:
【参考方案3】:您可以尝试在您的 apache 网络服务器上运行它。它会起作用的。
【讨论】:
这应该是评论...【参考方案4】:如果您使用的是 Mac OS X,请打开终端 cd
到您的 Web 根目录并运行:
python -m SimpleHTTPServer
然后在 Chrome(或任何其他网络浏览器)中打开以下 URL:
http://0.0.0.0:8000
【讨论】:
有效!。谢谢。对于 MAC OS X 是更好的解决方案。 也适用于 Linux。对于那些需要快速网络服务器的人来说,这是一个很好的解决方案。以上是关于Chrome 中的“Access-Control-Allow-Origin 不允许使用 Origin null”。为啥? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
[Doc]MongoDB用户创建与启用access-control
Spring Security(三十):9.5 Access-Control (Authorization) in Spring Security