Opened 9 years ago
Closed 8 years ago
#212 closed улучшение (fixed)
При возникновении ошибок API откладывать defer.resolve() до закрытия окна с сообщением об ошибке
| Reported by: | alx | Owned by: | alx |
|---|---|---|---|
| Priority: | средний | Milestone: | 1 очередь |
| Component: | web-интерфейс (sw) | Keywords: | |
| Cc: |
Description
Сейчас запросы chat посылаются серверу каждые 10 секунд (если не открыта вкладка "Чат"). Когда сервер возвращает ошибку, появляется окно с сообщением и кнопкой "закрыть". Однако в качестве времени последнего опроса запоминается время отправки запроса, а не время получения ответа и, тем более не время закрытия окна с ошибкой. Это может приводить к странным эффектам, когда пользователь закрывает окно с ошибкой и тут же получает новое, так как таймер нового запроса шел, пока окно было открыто.
Предлагается включать время отображения окна с сообщением об ошибке в общее время транзакции, и, если сервер вернул ошибку, выполнять defer.resolve() не в момент создания окна с сообщением, а в момент его закрытия. Таким образом вызывающий request() сможет устанавливать обработчики методами .done() и .always(), которые сработают не при получении ответа, а при закрытии окна.

In 1528/sw: