Хорошая структура для серверной части приложения на веб-сайте

Как и все остальные, а также их соседи, мы разрабатываем приложение (ipad/android) для одного из наших веб-сайтов, которое имеет функции, к которым люди скорее получают доступ в приложении по причинам, не поддающимся пониманию.

Ну, мой вопрос касается того, как думать, когда дело доходит до бэкэнда для приложений.

У нас есть сайт с доступной структурой:

http://site/
http://site/profile/[user-name]
http://site/stuff
etc etc.

Разумно или неразумно с нашей стороны просто добавить базу для наших приложений вот так

http://site/app

Таким образом, приложения будут получать доступ к своим данным модели и своим контроллерам из этой базы, например.

http://site/app/profile/[user_id] 

для получения/установки данных для пользователя (может быть любой объект, но в этом примере мы ориентируемся на пользователей) или лучше полностью отделить серверную часть приложения от нашего сайта и перейти на любой поддомен

http://app.site/

or

http://anothersite_as_backend

или вам это вообще безразлично?

Меня просто интересует, как вы собираетесь объединять свой веб-сервер с серверной частью вашего приложения.

Спасибо.


person Adergaard    schedule 27.03.2014    source источник


Ответы (1)


Ну, независимо от выбора структуры домена, в наши дни довольно популярно открывать интерфейс REST.

Идеи, которые вы набрасываете, похоже, склоняются к этому и считают, что все варианты действительны. Тем не менее, я бы посоветовал (используя первый вариант в качестве примера) включить в URL-адрес некоторую версию, например http://site/app/v1/profile/[user_id]. Затем вы можете увеличить версию в любой момент в будущем, если вам нужно будет внести серьезные изменения в API, не нарушая работу необновленных приложений.

Ничего не зная о вашем приложении и текущем состоянии вашего бэкенда, я просто упомяну parse.com, так как я думаю, что они проделали большую работу по упрощению хранения и извлечения данных со многих платформ. Вы можете увидеть мой ответ на этот вопрос для получения дополнительной информации: Реляционная база данных, совместно используемая приложением для Android и веб-сайтом — простой способ. Это, конечно, не имеет значения, если вы уже реализовали серверную часть и на данный момент имеете много данных.

person cYrixmorten    schedule 27.03.2014