|
|
|
Restful сервис и сохранение состояния
|
|||
|---|---|---|---|
|
#18+
Есть веб приложение - view - controller - service, у controller стоит Scope(session). В контроллере сохраняю состояние между запросами, например id залогинившегося и пребывающего в сессии User. Теперь надо например между view и service поставить restful. То есть будут тоже уровень контроллеров между ними с мэппингом Код: java 1. 2. Но как теперь сохранять тот же id между запросами? Или же restful всегда stateless? И сессию надо поддерживать на самом клиенте, высылая некий tokien, полученный от сервера? Проясните пожалуйста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2013, 01:16:26 |
|
||
|
Restful сервис и сохранение состояния
|
|||
|---|---|---|---|
|
#18+
контроллер в принципе не должен быть с сохранением состояния независимо от того рестыул это или нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2013, 01:51:36 |
|
||
|
Restful сервис и сохранение состояния
|
|||
|---|---|---|---|
|
#18+
А где же тогда еще сохранять состояние, если не в контроллере? Service всегда вроде stateless? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2013, 02:08:40 |
|
||
|
Restful сервис и сохранение состояния
|
|||
|---|---|---|---|
|
#18+
Я имею ввиду конкретно Spring mvc. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2013, 02:09:05 |
|
||
|
Restful сервис и сохранение состояния
|
|||
|---|---|---|---|
|
#18+
Rest авторДанные в REST должны передаваться в виде небольшого количества стандартных форматов (например HTML, XML, JSON). Сетевой протокол (как и HTTP) должен поддерживать кэширование, не должен зависеть от сетевого слоя, не должен сохранять информацию о состоянии между парами «запрос-ответ» . Утверждается, что такой подход обеспечивает масштабируемость системы и позволяет ей эволюционировать с новыми требованиями. Поэтому у вас что-то явно другое, но не rest-сервис. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2013, 02:10:41 |
|
||
|
Restful сервис и сохранение состояния
|
|||
|---|---|---|---|
|
#18+
oson, в rest всчя иныформацйичя приходит С КАЖДЫМ запросом либо в URL либо в куках клиента. Поэтому сохранять Ид на сервере не надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2013, 12:10:35 |
|
||
|
Restful сервис и сохранение состояния
|
|||
|---|---|---|---|
|
#18+
То есть если например взять пример - User входит в систему и далее ему доступны действия как авторизированный пользователь в несколько шагов, причем следующий шаг зависит от предыдущего. Это должно выглядеть так: -при логине rest сервис высылает назад клиенту некий токиен - слово, которое идентифицирует клиента -каждый следующий запрос клиент формирует request так, что в него вкладывается и этот выданный токиен -rest севис получает новый запрос от того же клиента, но не знает, что это тот же клиент. Затем проверяет в запросе наличие токиен, по нему определяет, что это клиент номер 234, его предыдущий шаг был step1 (например авторизация) и предоставляет возможность ему сделать Step2. То есть фактически о своем состоянии заботится сам клиент, вкладывая в каждый новый запрос этот tokien, выданный при авторизации. Примерно так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2013, 12:38:29 |
|
||
|
Restful сервис и сохранение состояния
|
|||
|---|---|---|---|
|
#18+
авторМатериал из Википедии — свободной энциклопедии REST (сокр. англ. Representational State Transfer, «передача представлений состояний»[1]) — стиль построения архитектуры распределенного приложения. Был описан и популяризован в 2000 году Роем Филдингом (Roy Fielding), одним из создателей протокола HTTP. Самой известной системой, построенной в значительной степени по архитектуре REST, является современная Всемирная паутина. Данные в REST должны передаваться в виде небольшого количества стандартных форматов (например HTML, XML, JSON). Сетевой протокол (как и HTTP) должен поддерживать кэширование, не должен зависеть от сетевого слоя, не должен сохранять информацию о состоянии между парами «запрос-ответ». Утверждается, что такой подход обеспечивает масштабируемость системы и позволяет ей эволюционировать с новыми требованиями. http://ru.wikipedia.org/wiki/REST ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2013, 12:54:11 |
|
||
|
Restful сервис и сохранение состояния
|
|||
|---|---|---|---|
|
#18+
oson, Сервер не может высылать клиенту. Связь ОДНОСТОРОННЯЯ. В REST нет Шаг1 и Шаг2 вообще. Если про авторизацию, то При регистрации ты пишешь ему в куки слово "Вася". При следующем заходе от непонятно кого - читаешь куки и видишь = Вася. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2013, 12:58:56 |
|
||
|
Restful сервис и сохранение состояния
|
|||
|---|---|---|---|
|
#18+
Petro123oson, Сервер не может высылать клиенту. Связь ОДНОСТОРОННЯЯ. В REST нет Шаг1 и Шаг2 вообще. Если про авторизацию, то При регистрации ты пишешь ему в куки слово "Вася". При следующем заходе от непонятно кого - читаешь куки и видишь = Вася. Кто кому пишет в куки? Сервер пишет в куки Вася и при следующем запросе сервер читает куки и видит Вася? Тогда это тоже самое, что сервер высылает первый раз tokien а при повторном запросе от клиента читает его. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2013, 13:04:15 |
|
||
|
Restful сервис и сохранение состояния
|
|||
|---|---|---|---|
|
#18+
osonКто кому пишет в куки? Сервер пишет в куки Вася и при следующем запросе сервер читает куки и видит Вася? Тогда это тоже самое, что сервер высылает первый раз tokien а при повторном запросе от клиента читает его. ok. нет состояния на сервере ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2013, 13:18:51 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38099212&tid=2130257]: |
0ms |
get settings: |
16ms |
get forum list: |
29ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
50ms |
get topic data: |
22ms |
get forum data: |
5ms |
get page messages: |
104ms |
get tp. blocked users: |
3ms |
| others: | 336ms |
| total: | 577ms |

| 0 / 0 |
