【发布时间】:2013-11-21 21:44:03
【问题描述】:
我已经构建了一个我在 Heroku 上托管的 rails restful 服务和一个我试图从我的本地机器上运行的 Angular 客户端。最终,该客户端将运行添加到 phonegap 项目中。但是,现在我正在用 chrome 和 ie 测试应用程序,我的浏览器不断返回下面的错误。
XMLHttpRequest cannot load Origin http://localhost is not allowed by Access-Control-Allow-Origin.
这是我收到的错误消息。在推送到 Heroku 之前,我遇到了这个问题,并通过在我的回复中添加访问标头来解决它。
after_filter :cors_set_access_control_headers
# For all responses in this controller, return the CORS access control headers.
def cors_set_access_control_headers
headers['Access-Control-Allow-Origin'] = 'http://localhost' #*
headers['Access-Control-Allow-Methods'] = 'POST, GET, OPTIONS'
headers['Access-Control-Allow-Headers'] = %w{Origin Accept Content-Type X-Requested-With X-CSRF-Token}.join(',')
headers['Access-Control-Max-Age'] = "1728000"
end
这似乎不起作用。由于某种原因,这不适用于 Heroku。有谁知道如何解决这个问题?
【问题讨论】:
-
您解决了这个问题吗?我有同样的...
-
是的......我会在下面发布答案
标签: ruby-on-rails angularjs heroku cordova cors