RESTful WebService: как сервер отправляет и View & JSON / XML? - PullRequest
0 голосов
/ 27 февраля 2011

Я уже написал несколько, хотя и небольших, RESTful Web Services (RWS).Но в этих случаях был полный контроль над представлением (уровень представления), т. Е. Представление было локально запущенным приложением на платформе (смартфон?).Был независимый контроль над представлением и RWS на сервере, который отправлял бы JSON (или текст или любое другое удобное представление, давайте предположим, что JSON только для темы).

Теперь перейдем в Интернет: представление(т. е. HTML-страницы) находятся на сервере.Этот сервер теперь должен обслуживать как HTML, так и JSON.Мой вопрос, как 2 разделены (или связаны)?Вот пример: enter image description here

Вопросы:

  1. На шаге (X) на изображении, когда страница стены возвращается на страницуклиент все сообщения на стене заполняются на этой странице.Если бы это был клиент, чье представление не было предоставлено сервером, он, вероятно, просто вернул бы JSON сообщений на стене.Так, как эта ситуация обрабатывается в этом случае?Должен ли сервер возвращать серверную страницу (SSP), которая имеет всю логику рендеринга / форматирования?

  2. На шаге (Y) пользователь желает обновить что-либо на странице и отправляет jQuery+ Ajax HTTP: PUT на сервер (при каком-то URI, так что страница на стене - это фасад?).

Путаница (== Вопросы?: -)

  • Как вы разделяете проблемы JSON + SSP при отправке запроса насервер?

  • Так устроены веб-клиенты?Первая возвращаемая страница (X) на самом деле представляет собой SSP, который включает в себя всю логику для выполнения Ajax / REST-вызовов на сервер ??

  • Как тогда создать хорошую страницу, т.е., JSP (скажем) + JQuery + CSS + AJAX ??(Возможно ли в этом случае иметь дизайн NO SSP? Т.е. только HTML + jquery + CSS ??)

Просто немного запутался ..

Спасибо взаранее

Ответы [ 2 ]

0 голосов
/ 27 февраля 2011

Полагаю, я не совсем понимаю, что вам здесь нужно.

Но почему бы просто не взглянуть на заголовок Content-Type запроса и вернуть клиенту то, что они просят? Если они просят HTML, отправьте им HTML. Если они просят JSON, отправьте им JSON.

Возможно, вы захотите рассмотреть что-то вроде JAX-RS, которое будет отправлять код, основанный на Content-Type, возможно, это избавит вас от некоторых проблем.

0 голосов
/ 27 февраля 2011

Веб-браузер - это просто движок рендеринга.Он будет отображать и выполнять только то, что отправляет веб-сервер.В вашей ситуации вы должны отправить браузеру html, независимо от того, является ли этот html статическим или сгенерированным на сервере, не имеет значения для браузера.Когда браузер отображает html, он также запускает любой код js / css, который вы указали.

* Is this how web-based clients are designed?? The first page returned (X) is actually a SSP which includes all the logic for making Ajax/REST calls to the server??

Да, HTML, который вы отправляете в браузер, имеет код js, который сообщает браузеру, что делать при определенных обстоятельствахсобытия происходят, как нажатие кнопки или загрузка страницы.

* How does one then go about a good page construction i.e., JSP (say) + jquery + CSS + AJAX?? (Is it possible to have a NO SSP design in this case? i.e. only HTML + jquery + CSS??)

Да, вы можете просто открыть статическую HTML-страницу, в которой есть все правильные js, и браузер сделает свое дело.

Надеюсь, это ответит на ваши вопросы?

...