请求未在Rails中设置标头

时间:2013-05-27 00:49:24

标签: ruby-on-rails ajax cross-domain cors cross-domain-policy

我正在创建一个用于进行跨域Ajax调用的bookmarklet。经过一番挖掘后,我遇到了Cross Origin Resource Sharing。我必须在我的域上设置请求标头,说可以这样做。

我遇到了一篇博客文章,解释了如何在rails中做到这一点。这是我的application.rb的代码

before_filter :set_access_control_headers 

def set_access_control_headers
  headers['Access-Control-Allow-Origin'] = '*'
  headers['Access-Control-Allow-Methods'] = 'POST, GET, OPTIONS'
  headers['Access-Control-Max-Age'] = "1728000"
end

当我在我的域上尝试拨打电话时,它会设置正确的标头。但是,当我尝试从其他域,这是这些选项的主要目的,他们没有得到设置。 我收到以下错误:

XMLHttpRequest无法加载http://mydomain.com/ Access-Control-Allow-Origin不允许原始堆栈溢出。 那是因为它没有被设定。根据我的知识,这与服务器有关,或者我实际上必须在我的Javascript中更改某些内容。我有一个选项吗?

任何帮助将不胜感激。感谢。

0 个答案:

没有答案