[RUBY-ON-RAILS] 어떻게 레일 아래에 WEBrick에서 설정 액세스 제어 - 수 - 원점?
RUBY-ON-RAILS어떻게 레일 아래에 WEBrick에서 설정 액세스 제어 - 수 - 원점?
내가 다른 도메인에서 운영됩니다 XMLHttpRequests를 통해 다른 사이트에 컨텐츠를 제공 할 수있는 작은 레일 응용 프로그램을 작성했습니다 (그들이 동일한 서버에서 실행 얻을 할 수 없습니다). 내가 액세스 요청 웹 페이지에이 자료를 허용하는 내 레일 서버 설정 액세스 제어 - 수 - 원점해야합니다 알고 있습니다.
그것은 꽤 잘 아파치와 함께이 작업을 수행하는 방법을 문서화 보인다 이것은 아마 내가 사이트를 배포하면 내가 사용하는 서버입니다. 나는 레일이 일을하는 데 사용하고 같은 단지에 WEBrick을 사용하는 희망하지만 내가 개발하고있는 동안. 레일에서 적절한 HTTP 헤더를 제공하기에 WEBrick을 구성하는 방법이 있나요?
해결법
-
==============================
1.당신이 레일 2에 있다면 당신의 응용 프로그램 컨트롤러에이를 추가 할 수 있습니다.
당신이 레일 2에 있다면 당신의 응용 프로그램 컨트롤러에이를 추가 할 수 있습니다.
before_filter :set_access def set_access @response.headers["Access-Control-Allow-Origin"] = "*" end
분명히 뭔가 좀 덜 개방에 "*"변화하는 것은 좋은 아이디어가 될 것입니다.
-
==============================
2.4 레일 (http://edgeguides.rubyonrails.org/security.html#default-headers)
4 레일 (http://edgeguides.rubyonrails.org/security.html#default-headers)
에서 설정 / application.rb :
config.action_dispatch.default_headers.merge!({ 'Access-Control-Allow-Origin' => '*', 'Access-Control-Request-Method' => '*' })
-
==============================
3.3.1 레일
3.1 레일
class ApplicationController < ActionController::Base protect_from_forgery after_filter :set_access_control_headers def set_access_control_headers headers['Access-Control-Allow-Origin'] = '*' headers['Access-Control-Request-Method'] = '*' end end
-
==============================
4.3.1 레일 - 나는 사용자 정의 미들웨어를 대신 추가, 그래서 나를 위해 일을하지 않았다 after_filter 컨트롤러를 사용하여 :
3.1 레일 - 나는 사용자 정의 미들웨어를 대신 추가, 그래서 나를 위해 일을하지 않았다 after_filter 컨트롤러를 사용하여 :
에서 응용 프로그램 / 미들웨어 / cors_middleware.rb :
# For icons to work in Firefox with CDN class CorsMiddleware def initialize(app) @app = app end def call(env) status, headers, body = @app.call(env) cors_headers = headers.merge({ 'Access-Control-Allow-Origin' => '*', 'Access-Control-Request-Method' => '*' }) [status, cors_headers, body] end end
에서 설정 / application.rb :
require File.join(Rails.root, "app", "middleware", "cors_middleware") config.middleware.insert_before ActionDispatch::Static, CorsMiddleware # Need it early in the chain to work for assets
-
==============================
5.2.3.8 레일
2.3.8 레일
before_filter :allow_cross_domain_access def allow_cross_domain_access response.headers["Access-Control-Allow-Origin"] = "*" response.headers["Access-Control-Allow-Methods"] = "*" end
-
==============================
6.경우 당신은 랙 미들웨어 보석과 같은 솔루션을 원하는 : https://github.com/cyu/rack-cors
경우 당신은 랙 미들웨어 보석과 같은 솔루션을 원하는 : https://github.com/cyu/rack-cors
from https://stackoverflow.com/questions/2535454/how-to-set-access-control-allow-origin-in-webrick-under-rails by cc-by-sa and MIT license
'RUBY-ON-RAILS' 카테고리의 다른 글
[RUBY-ON-RAILS] 링크 그것을 위해 레일을 LINK_TO 사용 후 (0) | 2020.03.01 |
---|---|
[RUBY-ON-RAILS] 레일의 긴 문자열에 열 유형 변경 (0) | 2020.03.01 |
[RUBY-ON-RAILS] 레일 : 액티브 쿼리 협회 값을 기준으로 (0) | 2020.03.01 |
[RUBY-ON-RAILS] 레일 타임 스탬프 필드를 업데이트 자동으로 방지 할 수있는 방법이 있나요? (0) | 2020.03.01 |
[RUBY-ON-RAILS] 레일에 구축하고 새로운 차이점은 무엇입니까? (0) | 2020.03.01 |