Mam aplikację Rails 3.1, dla której chcę utworzyć API. Chcę, by moje adresy URL, aby wyglądać tak:Rails 3.1 API Routes
www.example.com/controller/action // Normal Web requests
api.example.com/controller/action.json // API requests
Pierwszy z nich byłby dla normalnych żądań i drugi oczywiście dla mojego API rzeczy. Chciałbym, aby oba te elementy zostały odwzorowane na ten sam kontroler/działanie.
Jak skonfigurować moją aplikację, aby odpowiadała tylko na HTML, gdy na stronie www i json, xml, itp., Gdy jestem na subdomenie API?
Jeśli masz zamiar zbudować API do użytku zewnętrznego, radziłbym użyć oddzielnych kontrolerów. Obsługa błędów jest zupełnie inna w przypadku interfejsu API i interfejsu użytkownika. Również obsługa wyjątków jest dla nas zupełnie inna. Jeśli metoda API wyzwoli wyjątek, sformatujemy go do formatu xml i zwrócimy go z prawidłowym stanem HTTP. – nathanvda