gpt4 book ai didi

ruby-on-rails - 在 Rails 应用程序上启用 cors

转载 作者:行者123 更新时间:2023-12-03 15:02:56 27 4
gpt4 key购买 nike

在我的 application_controller.rb 上有以下代码

class ApplicationController < ActionController::Base
# Prevent CSRF attacks by raising an exception.
# For APIs, you may want to use :null_session instead.
protect_from_forgery with: :exception
before_filter :init_headers

def init_headers
headers['Access-Control-Allow-Origin'] = '*'
headers['Access-Control-Allow-Methods'] = 'POST, PUT, DELETE, GET, OPTIONS'
headers['Access-Control-Request-Method'] = '*'
headers['Access-Control-Allow-Headers'] = 'Origin, X-Requested-With, Content-Type, Accept, Authorization'
end
end

我也在使用 chrome 插件 Allow-Control-Allow-Origin当我运行 angularjs 前端时,出现以下错误。XMLHttpRequest 无法加载预检响应具有无效的 HTTP 状态代码 404

最佳答案

首先,我强烈推荐使用Rack-CORS gem .

您将能够从config 设置中运行规则,而不是乱用您的ApplicationController

它处理来自中间件的 CORS,因此您将能够创建应用范围的规则,如下所示:

#config/application.rb
...
config.middleware.insert_before 0, "Rack::Cors" do
allow do
origins '*'
resource '*', :headers => :any, :methods => [:get, :post, :options]
end
end
...

他们的文档非常好并且一目了然。

--

关于您的错误,404 代码表明您正在尝试访问根本不存在的资源。 URL 或路由不会接收请求。

关于ruby-on-rails - 在 Rails 应用程序上启用 cors,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32657040/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com