Ruby on Rails에서 헤더 데이터 읽기


96

Facebook 로그인 용 액세스 토큰에서 헤더 데이터를 통해 전송되는 API를 만들고 있습니다.

헤더에서이 데이터를 어떻게 읽습니까?


3
검색 키워드 : "rails header request".
Sergio Tulentsev 2013

16
@SergioTulentsev 정확히 저를 여기로 이끌었습니다.
YoTengoUnLCD

답변:


154
request.headers["Content-Type"] # => "text/plain"

"Content-Type"을 읽으려는 헤더의 이름으로 바꿉니다.

Rails 4.2 업데이트

Rails 4.2에서 가져 오는 방법은 두 가지가 있습니다. 예전 방식 (아직 작동) :

request.headers["Cookie"]

새로운 방식:

request.headers["HTTP_COOKIE"]

요청의 모든 헤더가있는 해시를 얻으려면.

request.headers

22

Rails는 이제 HTTP_를 헤더에 첨부하고 모두 대문자로 변환하므로 이제 다음과 같습니다.

request.headers["HTTP_CONTENT_TYPE"]

나는 랙이 레일이 아니라고 말하는 돈이 있습니다. 상점 잘못 될 수
j_mcnally

-7

실제 http 헤더의 해시를 얻으려면 @_headers컨트롤러에서 사용 하십시오 .


4
이와 같은 인스턴스 변수에 직접 액세스하는 것은 정말 나쁜 형식입니다. 그 밑줄은 이것을하지 말라는 것을 상기시키기위한 것입니다.
tadman
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.