没有& # 39;Access-Control-Allow-Origin& # 39;header存在于Rails AP
No 'Access-Control-Allow-Origin' header is present in Rails API backend
我在Rails中有一个jsonapi-resources
后端api。我能够使用curl
以及Python请求数据。
当我尝试使用jQuery
请求时,我在浏览器中得到以下错误:
XMLHttpRequest无法加载- 3. - herokuapp.com/customers?filter%5bshop_token%5d=9e3c9769b752436ddbd27597cf946a36 https://shop api。预起飞请求响应未通过访问控制检查:否"访问-控制-允许-起源"标头出现在请求上资源。因此,不允许访问原点'null'。响应HTTP状态码为404。
所以我把这个添加到config/environments/production.rb
:
config.action_dispatch.default_headers = {
'Access-Control-Allow-Headers' => 'Origin, X-Requested-With, Content-Type, Accept, Authorization',
'Access-Control-Allow-Origin' => '*',
'Access-Control-Request-Method' => '*',
'X-Frame-Options' => 'ALLOWALL'
}
然而,我仍然得到相同的错误。我错过了什么?
这是我的curl
命令:
curl -i -H "Accept: application/vnd.api+json" "https://app.herokuapp.com/retentions?filter%5Bshop_token%
5 d = ABC123"
Using Rails 4
一个月前我也遇到过同样的问题,在阅读了很多博客文章之后,我通过…
所以看起来你正在请求一个api令牌,在另一个服务器上使用jquery(从浏览器)而不是这样做,从你的服务器请求它,然后你得到它传递给客户端,然后你可以做任何你想要的,这应该做的技巧。
我对这个CORS的理解是你不能从浏览器到服务器,你必须从服务器(你的域名)到服务器(你正在访问的api)。
希望这对你有帮助!
相关文章:
- 如何从rails中的代码中删除新行( )
- Rails File_field最大堆栈大小
- angularjs+rails应用程序中未显示模板
- Rails/JSON:如何将JSON用于jquery UI自动完成表单
- Rails 3.2 js.erb文件转义js
- Rails-JQueryUIAutcomplete和AJAX不工作,可以't连接到数据库
- Jquery:代码在rails中的页面加载时未执行
- Rails操作只调用一次,但我在ajax中每秒钟都调用一次
- Rails/Javascript链接到用于切换多个元素的函数
- 在Rails中更新Div,而不更改更新请求后的视图
- Jquery append oly获取循环Rails中的最后一个elemen
- 通过rails中的Ajax在控制器B的每个视图中渲染控制器a的视图
- 使用主干网和rails的静态页面路由
- 将JavaScript变量保存到Rails模型
- Rails:如何向用户预加载消息
- Ajax and Json with Rails
- Ajax调用ERror Cross Origin REquest:在rails中自动完成大学列表
- Rails:如何获取当前用户'使用Heroku时的时区
- Rails将JavaScript对象存储到Model的有效方式
- 没有& # 39;Access-Control-Allow-Origin& # 39;header存在于Rails AP