XHR不起作用,因为“访问控制 - 允许 - 来源”不允许“来源”。
我正在开发一个带有Rails 3的API服务器到目前为止非常方便,但我一直在运行错误,我不确定是因为我的Apache安装程序还是Rails应用程序。
当我尝试通过XHR在http://sample.domain/uri/id上执行HTTP DELETE或PUT请求时,curl或HTTP -Client.app Rails或Apache响应404或403(取决于客户端。我想是因为of cors)和Safari开发者控制台响应
XMLHttpRequest cannot load http://sample.domain/uri/id. Origin http://web.client/ is not allowed by Access-Control-Allow-Origin.
我在Apache2上使用mod_rack aka mod_rails,我的vhost实际上包含:
Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Methods POST,GET,DELETE,PUT,OPTIONS
Header set Access-Control-Allow-Headers X-Requested-With
Apache error_log响应以下错误:
[Sat Oct 30 01:37:34 2010] [error] [client 22.222.222.22] client denied by server configuration: /path/to/rails/folder/public, referer: http://web.client/
Rails development.log响应
Started OPTIONS "/uri/id" for 84.190.123.140 at 2010-10-30 03:18:42 +0200
ActionController::RoutingError (No route matches "/uri/id"):
在这里我也不确定为什么OPTIONS调用会降低,因为我认为这只是预检,并且肯定没有OPTIONS的路由,因为我想响应DELETE
如果您对如何解决此问题有任何疑问,请与我分享。
非常感谢大卫
没有找到相关结果
已邀请:
3 个回复
埃输林桨铃
厢界山攀
眠皇
指令或类似的东西。 如建议的那样,请确保您首先
。