Локализация дат и в распределенных приложениях
От: baranovda Российская Империя  
Дата: 24.03.15 21:55
Оценка:
Думаю, Sciter тут представлять не надо и его все знают.

Есть в нем закавыка с контролом ввода даты.
В форме ввода я выбираю дату при помощи выпадающего календаря, далее эта дата заворачивается в JSON и отправляется на веб-сервер.
На веб-сервере я обнаруживаю, что получаю не ту дату, которую вводил, а UTC, то есть минус три часа поправки на мой часовой пояс, или иными словами не 25.03.2015, а 24.03.2015 21:00.
То есть контрол сам поправил введенную мной дату и привел ее к UTC.

Академически все правильно: Андрей считает, что в распределенных приложениях, которые могут работать с сервером откуда угодно, дату/время нужно приводить к UTC и я в этом с ним согласен.

Должен ли такое преобразование самостоятельно выполнять контрол, работающий в Presentation Layer?
Или же это ответственность Buisness Layer-а (контроллера, презентера или чего там еще)?

Т.е. я считаю, что я, если хочу, должен перед отправкой JSON на сервер самостоятельно внести коррекцию TimeZone во все даты в JavaScript/TIScript-контроллере, или как-то передать веб-серверу TimeZone клиента (через Cookie, через сессию, или вообще вынести настройку TimeZone пользователя в профиль пользователя, хранящийся в базе данных).

Кто прав?
Отредактировано 24.03.2015 21:56 α . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.