Я разрабатывал свои приложения для рельсов, сохраняя их как можно более модульными. Я пытаюсь реализовать различные части под услугами.
Скажите пример Facebook:
a) A MainApp, который позволяет пользователю иметь стену, сообщения и т.д.
b) A PhotoApp, в котором хранятся фотографии, позволяет пользователю видеть его фотографии и т.д. Это автономное приложение, которое будет иметь REST API, который также может использоваться MainApp.
Я думал об использовании OAuth в качестве решения Single Sign On (как в этом уроке http://blog.joshsoftware.com/2010/12/16/multiple-applications-with-devise-omniauth-and-single-sign-on/), где каждое приложение будет авторизовано через OAuth и получит доступ к текущему сеансу пользователя на основе файла cookie.
Первый вопрос: Является ли это жизнеспособным решением?
Второй вопрос: Я хочу иметь возможность вызывать API PhotoApp на сервере MainApp (а не в браузере пользователя). Как аутентификация будет работать в этой ситуации?
Третий вопрос: Как это работает, если скажу, что у меня была служба, которая использовала node.js?