Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Ruslan Kosolapov                     2:5020/400     10 May 2007  12:45:10
 To : Victor Wagner
 Subject : Re: Debian vs Ubuntu
 -------------------------------------------------------------------------------- 
 
 ==[ Victor -> Ruslan:
 
  VW> Тут по-моему Шнайер недавно приводил пример к чему приводит идея
  VW> сессий.  Представьте что пользователь посреди сессии открыл новое
  VW> окно браузера, и полез по сайту куда-то вбок (в примере был выбор
  VW> гостиницы на Аляске, а в новом окне - список гостиниц на
  VW> Гавайях). Почитав этот второй список пользователь возвращается к
  VW> первому окну, и жмет кнопку "заказать".
 
   Это пример не того, что сессии плохи, а того, что надо уметь ими
   пользоваться.  Мои веб-морды такой болезнью не страдают, а там много
   чего на сессиях (более того, они вообще на PHP).
 
   Те же continuations-фреймворки нормально переживают и кнопку back, и
   открытие в новом окне, хотя состояние хранится на сервере, а не на
   клиенте (а основное отличие от "классических" сессий только в том,
   клиент передаёт id состояния в урле, а не в куке, и то, что
   состояний у одной сессии много, а не одно последнее).
 
   Кстати, PHP умеет работать с сессиями в подобном стиле (не через
   куку, а через форму).  Добавить генерацию новой, частично
   заполненной сессии на каждый запрос - вот вам и
   pseudo-continuations.  Hет проблем с кнопкой back, нет проблем с
   новыми окнами.
 
  RK>> Да и авторизацию ту же как без сессий делать? 
  VW> По RFC 2617. Его бы, кстати, давно доработали, если бы народ им
  VW> пользовался.
 
   Во, "давно доработали бы".  То есть согласен, что в текущем виде
   это неюзабельно? ;)
 
  RK>> Таскать параметры через URL - это держать state на стороне
  RK>> клиента (то есть чем это принципиально лучше сессий?), со
  VW> Лучше именно тем, что позволяет использовать многооконные
  VW> возможности браузера, не предпнимая никаких мер со стороны
  VW> сервера, нормально обрабатывает кнопку Back в браузере (опять же
  VW> без усилий со стороны сервера), обрабатывает отключение
  VW> пользовательского компьютера etc.
 
   Всё это в случае post работать будет хреново (браузер будет
   спрашивать "а ты уверен, что хочешь ещё раз post послать?").  А get
   имеет ограничения (да хотя бы по размеру), которые не позволяют его
   везде юзать.  С сессиями "меры со стороны сервера" легко
   автоматизируются так, что не требуют постоянных затрат со стороны
   программиста (да, получается при этом, что данные гоняются
   аналогично бессессионному случаю (за исключением того, что если не
   было сабмита, то и данные гонять не надо, а это важно), но зато есть
   принципиальная возможность проверить, что клиент их не подменил).  В
   бессессионном случае штуки типа многошаговых визардов (да ещё и с
   разграничением прав, да ещё и с нормальным интерфейсом) делать
   сложнее.
 
   Hу и в случае хранения состояния на клиенте один из основных смыслов
   web-морд теряется - пользователь получается привязан к конкретному
   браузеру конкретной машины, что есть суксь.
 PS: вижу, что gmail слишком большой пример.  Переформулирую - как
 запоминать то состояние, в котором пользователь оставил страницу.  Как
 пример - web-морда к консольной утилите с кучей параметров, в качестве
 параметров не только текст, но и картинки, скажем (хотя это не сильно
 принципиально, конечно).
  
 -- 
 =[ ... и демон думает долго-долго, просто бесконечно долго. 
 =[ Хотя бесконечно я не ждал.     -- ast
 --- ifmail v.2.15dev5.3
  * Origin: SWSoft Novosibirsk, QA Department Second Manager (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: Debian vs Ubuntu   Victor Wagner   08 May 2007 23:57:44 
 Re: Debian vs Ubuntu   Ruslan Kosolapov   10 May 2007 07:57:04 
 Re: Debian vs Ubuntu   Victor Wagner   10 May 2007 09:24:09 
 Re: Debian vs Ubuntu   Ruslan Kosolapov   10 May 2007 12:45:10 
 Re: Debian vs Ubuntu   Victor Krapivin   10 May 2007 16:29:13 
Архивное /ru.linux/20595bef2d3ff.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional