Один HTML-сайт, использующий только клиентские шаблоны и вызовы Rest - PullRequest
5 голосов
/ 27 мая 2011

Я работаю на высокодинамичном сайте, который имеет около 10 различных страниц (логин, регистрация, мои услуги, мой профиль и т. Д.).

Я подумываю об использовании фреймворка шаблонов javascript (например, jquery-temp) и хранить все страницы в одном HTML-файле.Взаимодействие с пользователем приведет к обмену / активации / скрытию различных шаблонов.На стороне сервера все запросы обрабатываются с помощью вызовов rest / json.Я думаю, что html будет обслуживаться nginx, в то время как вызовы json направлены на причал (java).

Это жизнеспособный подход и что может пойти не так?

Спасибо,

РЕДАКТИРОВАТЬ - Я знаю, как это сделать, я хочу знать, не вызовет ли это проблему в долгосрочной перспективе.

Ответы [ 2 ]

2 голосов
/ 28 мая 2011

Я делал нечто подобное в последнее время, и это работает довольно хорошо.Пара наблюдений:

  1. Вам нужно будет работать усерднее, чем в противном случае, если вы хотите, чтобы разные представления имели ссылки на ссылки, и поддерживать историю, чтобы все работало хорошо с браузером назад / впередкнопок.(хотя вы можете не заботиться об этом)
  2. У вас есть одна большая загрузка страницы при первом посещении сайта - это может быть медленнее, чем разделение страниц.
  3. Нет детализациикешированию сайта;если вы поменяете одного персонажа на одной странице сайта, все это нужно будет перезагрузить.В отличие от того, что если вы пролистали страницы, а затем изменили одну из них, любые HTTP-кеши все равно будут в порядке для других страниц.
  4. Переключение шаблонов через AJAX может дать вам немного меньшую обратную связь в пользовательском интерфейсе, чем при стандартной загрузке страниц.Например, если соединение медленное, нажатие на обычную ссылку, по крайней мере, покажет мне, что страница загружается, тогда как вызов AJAX будет выполняться в фоновом режиме.Я не уверен, что это применимо в вашем случае, хотя, похоже, вы предварительно загрузите весь HTML и просто переключитесь, какие биты видны.В аналогичном ключе страницы, которые заполняют свой контент через AJAX, могут рендериться менее изящно во время загрузки.
  5. И, очевидно, - если у пользователя не включен JavaScript, вы облажались.Я не уверен, что кого-то это больше волнует, но думаю, что это также может повлиять на SEO.
0 голосов
/ 27 мая 2011

Проблема, которую я вижу: если вы обслуживаете шаблоны и данные из разных доменов, междоменные запросы остаются головной болью.Но вы можете прокси-запросы к одному или другому серверу, используя nginx или выделенный прокси-сервер, в зависимости от пути, например, обслуживайте htmls с example.com/html и данные с example.com/rest.

...