동일한 레일즈 응용 프로그램의 도메인 이름을 기반으로보기 형식을 변경할 수있는 방법이 있는지 알고 싶습니다.도메인 이름을 기준으로보기 형식을 변경하는 방법
- www.domain.com => respond_to
- api.domain.com => respond_to format.xml 또는 모든
감사
당신의 도움을 위해서
동일한 레일즈 응용 프로그램의 도메인 이름을 기반으로보기 형식을 변경할 수있는 방법이 있는지 알고 싶습니다.도메인 이름을 기준으로보기 형식을 변경하는 방법
감사
당신의 도움을 위해서
그렇습니다. 컨트롤러에 before_filter를 사용하고 값에 따라 response.format
을 설정하십시오.
class Controller < ActionController::Base
before_filter :adapt_response_format
protected
def adapt_response_format
response.format = case request.host
when "xml.foo.com" then :xml
else :html
end
end
굉장! 대단히 감사합니다! – jjmartres
는 여기에 귀하의 문제가 무엇인지 내가 추측하고 대안 방법입니다.
클라이언트가 원하는 형식에 따라 Accept 헤더를 application/xml 또는 application/json으로 설정하도록 요청하지 않는 이유는 무엇입니까? 기본적으로 웹 브라우저를 지원하기 위해 html을 제공 할 수 있습니다.
이렇게하면 두 개의 서로 다른 호스트를 가질 필요가 없습니다.
확실히 아파치 설정을 조정할 수 있습니다. – vava