@nkemenov

Технологии для веб-приложения с rest-API?

Привет! Суть такова - ранее работал с rest-API со стороны iOS/Android приложений, разрабатывал клиенты, которые стучатся к серверу, получают данные и обрабатывают их, например, выводят их, грубо говоря, на экран.
Однако сейчас есть идея для сайта и соответствующих приложений под iOS/Android.
Хочется, чтобы сайт не работал напрямую с базой, а стучался к апишке, получал данные в виде json (например, посты/комментарии) и отображал их на страницах, аналогично клиентским приложениям под iOS/Android.
Например, и сайт и приложения запрашивают посты из одного места: base_url/api/posts/12345/.
Правилен ли будет такой подход, когда не только iOS/Android, но и веб-приложение использует одну и ту же API? Смущает, что в вебе, например, отличается способ авторизации - насколько я понял, не принято использовать токены авторизации в хэдерах запроса, а используются куки и пр.
Если такой подход все же принят, то какие технологии для этого лучше (с точки зрения простоты) использовать в веб-части? Правильно ли я понимаю, что можно использовать фреймворки на базе JS, вроде bootstrap, чтобы преобразовать возвращаемые бэком данные в html код. Заранее спасибо!
  • Вопрос задан
  • 300 просмотров
Решения вопроса 1
@mletov
Правилен ли будет такой подход, когда не только iOS/Android, но и веб-приложение использует одну и ту же API?

Почему бы и нет. Зачем городить кучу разных апишек для разных клиентов.

не принято использовать токены авторизации в хэдерах запроса

Вполне себе принято. Гуглите JWT. Правда токен авторизации действительно хранится на клиенте в куках или LocalStorage, но так, наверное, и в мобильном приложении он где-то хранится.

Если такой подход все же принят, то какие технологии для этого лучше (с точки зрения простоты) использовать в веб-части? Правильно ли я понимаю, что можно использовать фреймворки на базе JS, вроде bootstrap

bootstrap - это не js фреймворк, а html+css фрэймфорк. А так в целом да, можете использовать для интерфейса bootstrap, но не обязательно. Но если нужна хитрая логика на клиенте, то тут уже и js фреймворк нужен: React, Angular, Vue...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы