-
- Не пойму. что значит "из-под AJAX". C моей точки зрения (исходя из
скудоумия?) это обычный асинхронный запрос из JS к HTTP серверу, в
котором с помощью "GET" можно пульнуть и принять данные. Сегодня
правда и наткнулся на xmlhttp.overrideMimeType('application/xml');
, иначе XML файл принимался некорректно :) Вот весь AJAX: Гyдвинволшебник(785 знак., 16.04.2020 17:36)
- Дрючить сервер раз в 10 секунд очень дурная идея, особенно когда
клиентов может быть очень много и таблицы большие. Возможно проще
не рвать соединение и досылать обновления. Для этого есть chunked
transfer encoding, server sent events и websockets как
универсальный способ сделать всё. - fk0легенда(16.04.2020 19:00)
- Отписался ниже по этому поводу. Клиентов с десяток, локальная
сетка, XML 10..30 кб. А вот и кусочек наброска "сервера", етить,
который предназначен только для этой задачи. Html со стилями и
скриптами вообще грузится из Memo, ибо пара сотен строк текста. Все
это летает со свистом... Ардуинщики они такие - Апачи с IIS-ами им
влом ставить - в деревнях их просто некому сопровождать. И оно еще
и работает ;) Гyдвинволшебник(723 знак., 16.04.2020 19:21)
- А вобще круто что Делфи не бросаешь, респект. - OlegPowerC(19.04.2020 12:14)
- Мало того, подумывал воткнуть "сервер" в какой-нить роутер - принимать XML от 1С и рассовывать десятку клиентов и его хватит за глаза... Только лень красноглазить, да и дельфийный - уже испытанное временем решение. - Гyдвинволшебник(16.04.2020 20:07)
- Отписался ниже по этому поводу. Клиентов с десяток, локальная
сетка, XML 10..30 кб. А вот и кусочек наброска "сервера", етить,
который предназначен только для этой задачи. Html со стилями и
скриптами вообще грузится из Memo, ибо пара сотен строк текста. Все
это летает со свистом... Ардуинщики они такие - Апачи с IIS-ами им
влом ставить - в деревнях их просто некому сопровождать. И оно еще
и работает ;) Гyдвинволшебник(723 знак., 16.04.2020 19:21)
- А зачем тебе вообще нужен асинхронный запрос? Потому, что как часто
бывают с ардуинщиками -- они услышали что-то одно, зацепились, а
темой не владеют и другого ничего слышать уже не хотят. И делают
какие-то странные вещи. Асинхронный запрос нужен веб-аппликации, когда оно живет условно независимо от
сети и запросов, и может в процессе загрузки что-то ещё делать.
Если у тебя всё равно и html с сервера загружается каждый раз, то
зачем там асинхронщина -- не понятно. fk0легенда(591 знак., 16.04.2020 18:39, ссылка)
- html с сервера загружается один раз!. А вот табличка обновляется периодически из XML файла с сервера,
чтобы не было дерготни в браузере. Ну и нажатия кнопок (а они тоже
имеются) для отправки событий - асинхронные запросы. Так что ве по
правилам "веб-аппликации"(c)... - Гyдвинволшебник(16.04.2020 19:00)
- В HTML есть такая штука: meta refresh. И у тебя страничка начинает
сама перезагружаться! А дерготня по любому будет, если сечас в
табличке 5 строк и одной ширины/высоты, а через секунду 20 строк, а
потом опять 5 строк и так далее. Ну можно конечно для внешнего
контейнера размеры прибить гвоздями к окну, тогда дерготня будет
только внутри него. А ещё фреймы есть, вот. Да, я знаю, мне 1000
лет я выполз из тьмы. Табличку сажаешь во внутренний фрейм, где она
через meta fk0легенда(133 знак., 16.04.2020 19:08)
- "Не стреляйте в пианиста, он играет, как умеет"(с) За идеи спасибо ;) Может быть, когда нибудь, в следующей реинкарнации... Ширину колонок таблицы, кстати, зафиксировал в секции стилей, да и колонок всего 3 - только самое необходимое, чтобы даже в телефонах правильно отображалось. А по вертикали оно нехай меняется - для того и обновляется, и отсортировано еще в базе 1С в соответствии с приоритетами. Ну и при тапе в строке таблицы, средствами JS выводится окно с Гyдвинволшебник(110 знак., 16.04.2020 19:52)
- В HTML есть такая штука: meta refresh. И у тебя страничка начинает
сама перезагружаться! А дерготня по любому будет, если сечас в
табличке 5 строк и одной ширины/высоты, а через секунду 20 строк, а
потом опять 5 строк и так далее. Ну можно конечно для внешнего
контейнера размеры прибить гвоздями к окну, тогда дерготня будет
только внутри него. А ещё фреймы есть, вот. Да, я знаю, мне 1000
лет я выполз из тьмы. Табличку сажаешь во внутренний фрейм, где она
через meta fk0легенда(133 знак., 16.04.2020 19:08)
- html с сервера загружается один раз!. А вот табличка обновляется периодически из XML файла с сервера,
чтобы не было дерготни в браузере. Ну и нажатия кнопок (а они тоже
имеются) для отправки событий - асинхронные запросы. Так что ве по
правилам "веб-аппликации"(c)... - Гyдвинволшебник(16.04.2020 19:00)
- Как внизу написано - лучше не делать. А что если у вас по
каким-либо причинам обработка действия займет больше 10 секунд?
Тогда эти таски застопорят страницу и переполнят очередь. lloyd(59 знак., 16.04.2020 17:38)
- Спасибо! Так и изображу. Как раз задумывался, как блокировать таймер при выводе в окно полей записи для просмотра. Скудоумие и отвага ;) Тут все-таки передача файла 10..30 килобайт, отрисовка таблицы практически мгновенная и на iPad, и на Android, и на компе - тестю. Хотя по многолетнему опыту эксплуатации в локалке затыков не неблюдалось. Там с интервалом 0.5 сек запрашивается информация о показаниях и статусе 8 автомобильных весов + команды управления с Гyдвинволшебник(133 знак., 16.04.2020 18:10)
- Дрючить сервер раз в 10 секунд очень дурная идея, особенно когда
клиентов может быть очень много и таблицы большие. Возможно проще
не рвать соединение и досылать обновления. Для этого есть chunked
transfer encoding, server sent events и websockets как
универсальный способ сделать всё. - fk0легенда(16.04.2020 19:00)
- Не пойму. что значит "из-под AJAX". C моей точки зрения (исходя из
скудоумия?) это обычный асинхронный запрос из JS к HTTP серверу, в
котором с помощью "GET" можно пульнуть и принять данные. Сегодня
правда и наткнулся на xmlhttp.overrideMimeType('application/xml');
, иначе XML файл принимался некорректно :) Вот весь AJAX: Гyдвинволшебник(785 знак., 16.04.2020 17:36)