Например TDA7294

Форум РадиоКот • Просмотр темы - HTTP: взаимодействие клиента и сервера
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Чт мар 28, 2024 11:19:53

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 62 ]    , , 3,  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Пт май 29, 2020 16:07:34 
Друг Кота
Аватар пользователя

Карма: 1
Рейтинг сообщений: 157
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3328
Рейтинг сообщения: 0
Eddy_Em писал(а):
А если серьезно, хотел бы я посмотреть на скрипт на пыхпыхе, который будет по CAN-шине и USB работать с железками
У вас сервер на микроконтроллере?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Сб май 30, 2020 16:48:14 
Собутыльник Кота
Аватар пользователя

Карма: -12
Рейтинг сообщений: -25
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 2525
Рейтинг сообщения: 0
У вас сервер на микроконтроллере?

Нет, конечно: на компьютере. Связь с МК — по RS-232, USB или CAN, где как. И очень удобно, когда один демон крутится себе, работает с железом, а также принимает на открытый сокет запросы и обрабатывает их. Если нет нужды в быстрой реакции, то можно обойтись без асинхронности: просто 1 раз в 5..60 секунд от клиента слать POST-запрос демону на определенный порт и получать обновленные данные, ну или сразу же слать запрос с командами. А вот если хочется, чтобы не больше сотни миллисекунд была задержка, то только вебсокеты. Не шарахать же по 10 раз в секунду жирные POST- или GET-запросы, нагружая сеть и сервер (а если клиентов будет несколько десятков?)!

_________________
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Вс май 31, 2020 15:27:04 
Друг Кота
Аватар пользователя

Карма: 25
Рейтинг сообщений: 96
Зарегистрирован: Вс янв 24, 2010 19:19:52
Сообщений: 4470
Откуда: Главный Улей России (Moscow)
Рейтинг сообщения: 0
Обычно уведомление клиента делают с помощью WebSocket, но я себе делал попроще:
JavaScript на странице раз в некоторое время запрашивал у сервера новые данные.
Заметьте, не страницу, а только данные. Получив их в виде JSON строки в качестве ответа, скрипт просто
присваивал полям на странице данные из JSON.
На JS запрос и заполнение можно написать в виде функции и вызывать ее как из
метода window.onload() (чтобы заполнить страницу данными после ее загрузки), так и из колбека таймера.

Например:
Создадим на стороне сервера обработчик такого запроса:
Код:
http://myserver.lan/GetDynamicData?DataSource=myDevice


Обработчик возьмет все данные с железки, соберет их в JSON строку (можно даже конкатенацией строк) вида:
Код:
{"data_1":127,"data_2":"что-то там..."

и вернет в качестве ответа.

В теле HTML документа разместим два элемента и присвоим им id:
Код:
<div id="DataOne"></div>
<div id="DataTwo"></div>


и код JavaScript:
Код:
// JSON request function
function fetch(url, method, callback, time_out){
    var xhr = new XMLHttpRequest();
    xhr.onloadend = function(){
        callback(xhr.status, xhr.responseText);
    }
    
    xhr
.ontimeout = function(){
        callback(-1, null);
    }
    
    xhr
.open(method, url, true);
    xhr.setRequestHeader('Accept', 'application/json');
    xhr.timeout = (time_out || 10) * 1000;
    xhr.send();
}

// Syntactical sugar
var $ = function(selector){
    return document.querySelector(selector);
}

// Refresh end
function DataReceived(mStatus, mResponse){
    // Если сервер вернул код 200
    if(mStatus == 200){
        // Парсим полученную в ответе JSON строку
        var rData = JSON.parse(mResponse);
        // Заполняем поля на странице
        $('#DataOne').innerText = rData.data_1;
        $('#DataTwo').innerText = rData.data_2;
    }
}

// Refresh start
function RefreshDynamicData(){
    // Шлем запрос серверу
    fetch('/GetDynamicData?DataSource=myDevice', 'GET', DataReceived, 10);
}

// Эта функция вызовется при загрузке страницы
window.onload = function(){
    // Вызовем функцию при загрузке страницы
    RefreshDynamicData();
    
    
// Заводим периодический таймер, который будет дергать функцию раз в 15 секунд
    var Timer = setInterval(RefreshDynamicData, 15000);
}


Сей подход у меня пашет как на ESP8266 с библиотекой EspAsyncWebServer, так и на апаче.
Я для ESPшек так и леплю страницы. Отрабатываю на Апаче, пишу API сервера на PHP, которое
имитирует работу микроконтроллерного web сервера (функции-заглушки на php). По окончанию разработки выгружаю
все в spiffs микроконтроллера и пишу уже реальный api сервера на C++ для микроконтроллера.

_________________
I am DX168B and this is my favourite forum on internet!


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Сб июн 13, 2020 21:59:42 
Вымогатель припоя

Карма: 9
Рейтинг сообщений: 151
Зарегистрирован: Сб ноя 16, 2013 23:34:34
Сообщений: 669
Рейтинг сообщения: 0
Недавно тут было обсуждение похожей темы. Тоже активно участвовал Eddy_Em, пытался рассказывать, что миллионы веб-программистов зря едят свой хлеб, и что он пишет веб-странички исключительно на голом си. Слился он только когда я попросил ссылку на исходники такого веб-сервера ;)
Не то, чтобы я был против того, чтобы кто-то в 2020-м писал серверные скрипты на С через CGI. Это как с секс-меньшинствами - меня слабо волнует, кто там кого через что любит, пока они не начинают гей-парады устраивать :) И пытаться мне доказывать, что мне нужно в письмах обращаться к нему Mrs Joe Schmoe ;)
Анти-офф: если изменения важно показывать в реальном времени только когда браузер открыт, и клиент в него пялится - любая реализация websockets подойдёт. Например, на ненавистном PHP: https://github.com/ghedipunk/PHP-Websoc ... ockets.php. А на клиенте делается как-то так: https://developer.mozilla.org/en-US/doc ... plications.
Можно без websocket-ов обойтись, обычным полингом, через JS, чтоб не "мигало" :) Это вот по такому принципу принято делать: https://developer.mozilla.org/en-US/doc ... ttpRequest
А если нужно, чтобы информация об изменениях даже при закрытом браузере приходила - тут нужно уведомления, и они только через инет работают. https://developer.mozilla.org/en-US/doc ... I/Push_API. Но я не знаю, как ЭТО работает на телефонных браузерах. В быту использую айфоны. На айфонах это точно не работает - там свои уведомления. А на андроид-телефонах как-то не приходилось серфить инет ;)


Вернуться наверх
 
Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Вс июн 14, 2020 01:27:02 
Собутыльник Кота
Аватар пользователя

Карма: -12
Рейтинг сообщений: -25
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 2525
Рейтинг сообщения: 0
AAX, это где я слился? Исходники лежат на гитхабе. Свою CGI-шную библиотеку я почуть переделываю под новые нужды (причесываю + добавлю обертки для работы с сокетами). А работает это все у меня уже лет 8 как минимум…
P.S. Я нашел отличную компактную реализацию вебсокетов (libwebsockets слишком уж жирным стал), так что вообще все замечательно. Разве что эта библиотека не работает с SSL, поэтому аутентификация выполняется либо средствами CGI, либо проксированием SSL-канала средствами NGINX на незащищенный порт сетевого демона. А дальше все замечательно.
Пыхпых или нодеЖС использовать — это уж чересчур! Скажи еще, на брейнфаке бэкенд писать!
Цитата:
В быту использую айфоны

А, сорян. Меня говном поливает чувак с анальным зондом. Забавно.

_________________
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Вт июн 16, 2020 14:16:38 
Вымогатель припоя

Карма: 9
Рейтинг сообщений: 151
Зарегистрирован: Сб ноя 16, 2013 23:34:34
Сообщений: 669
Рейтинг сообщения: 0
AAX, это где я слился?
А вот тут: https://radiokot.ru/forum/viewtopic.php ... 8#p3753878. Копаться в 100500 проектах в попытке найти кусок кода, работающего с CGI - извините, я слишком стар для этой фигни :)
Цитата:
В быту использую айфоны

А, сорян. Меня говном поливает чувак с анальным зондом. Забавно.
у меня в мыслях не было Вас ничем поливать. iOS чуть менее, чем полностью, является FreeBSD. Исходники по соответствующей лицензии открыты. Перед тем, как повторять вопли хомячков о том, что "Apple - пропиетарное дерьмо", есть смысл попробовать разобраться в предмете. Мне телефон в основном нужен для того, чтобы звонить, слушать музыку, платить и сёрфить инет. Исходя из предыдущей стилистики Ваших сообщений, могу предположить, что "анальным зондом" категорически не является телефон типа Nokia 3210 производства 1998 года. С него невозможно платить, слушать музыку, сёрфить инет, и трудно звонить последнее время, т.к. он не умеет LTE, а рудиментарная поддержка 2G современными сетями операторов сотовой связи функционирует странно, видимо, потому что практически не тестируется :)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Пт июн 19, 2020 15:56:41 
Собутыльник Кота
Аватар пользователя

Карма: -12
Рейтинг сообщений: -25
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 2525
Рейтинг сообщения: 0
AAX, ну, например:
- простейший файл-менеджер
- здесь вообще CGI на баше!
- библиотечка CGI (через месяц-другой обновлю ее: причешу, уберу русские комменты и добавлю функционал)
- а здесь - CGI на С и на баше
- видео через CGI
- а здесь я видео через вебсокеты отправлял
- здесь же используются POST-запросы на непривилегированный порт, что позволяет не долбаться с CGI, а держать лишь один демон, который и обрабатывает все запросы

Понятно, что у меня негусто примеров с вебом, т.к. GUI я терпеть не могу и заморачиваюсь с ними лишь в крайних случаях! CLI — самая универсальная штука. И наиболее юниксвейная.

_________________
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Вт авг 04, 2020 18:17:44 
Собутыльник Кота
Аватар пользователя

Карма: -12
Рейтинг сообщений: -25
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 2525
Рейтинг сообщения: 0
Вебсокеты - это очень просто, если обертку вроде libonion использовать.
Я на днях раскурил libonion, добавил аутентификацию/авторизацию с нормальными ключами, а не на одну сессию браузера. Осталось еще посидеть над кодом часик, добавить туда вебсокеты — и можно клепать веб-морды.
С аутентификацией пришлось повозиться из-за того, что libonion не умеет секурные вебсокеты, т.е. передавать пароль/логин по вебсокету нельзя. И у меня так делается: открываем по https некий адрес, демон на libonion отправляет веб-страничку со всем нужным. Если пользователь не авторизован, у него нет сессионной куки, и ему предлагается ввести логин/пароль. Ввел — данные отправляются по шифрованному каналу, вычисляется SHA512 пароля и пара логин/хэш сравнивается с хранящимся в БД. Если все ОК, в другую БД заносится запись об открытии сессии, пользователю отправляется кука с сессионным. Теперь он может получить другой ключ - для вебсокета. Получает, отрывает вебсокет и работает (сразу после открывания вебсокета этот временный ключ будет удаляться, так что MITM не сможет перехватить).

_________________
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Пт авг 07, 2020 08:12:08 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2057
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18024
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
Код:
var x = new XMLHttpRequest();

   x.onerror = function() {
      var data = document.getElementById("data");
      if (data != null) {
          data.innerHTML = '<div class="err">Device not connected</div>';
      }
   };
меня вот интересует: onerror не вызывается при просмотре странички с таким кодом (там еще есть, разумеется, и x.send(null);) на андроид-смартфоне (Chrome), в то время как в Chrome (и не только) на винде - вызывается.
тут либо какой-то нюанс, который мне неведом, либо баг браузера.

кто-то сможет пояснить, как с этим бороться?

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

скушно, бабоньки!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Пт авг 07, 2020 20:41:49 
Вымогатель припоя

Карма: 9
Рейтинг сообщений: 151
Зарегистрирован: Сб ноя 16, 2013 23:34:34
Сообщений: 669
Рейтинг сообщения: 4
Это происходит от того, что XMLHttpRequest.onerror не в стандарте.
https://developer.mozilla.org/en-US/doc ... ttpRequest - как надо обрабатывать события, возникающие при исполнении реквеста.
https://developer.mozilla.org/en-US/doc ... ttpRequest - стандарт, рекомендую использовать developer.mozilla.org в качестве референса, когда нужно что-то в вебе придумать. Там есть таблички, в которых указано, каким браузером и с какой версии поддерживается та или иная функция/атрибут.
UPD: первая ссылка была кривая, поправил


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Пн авг 10, 2020 08:22:41 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2057
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18024
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
AAX, спасибо, поглядел - вроде бы что-то понял. попробую теперь реализовать...

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

скушно, бабоньки!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Пн авг 10, 2020 09:31:11 
Поставщик валерьянки для Кота

Карма: 12
Рейтинг сообщений: 532
Зарегистрирован: Ср июл 17, 2013 13:55:57
Сообщений: 1978
Рейтинг сообщения: 0
ARV, вы лучше разделите данные и представление. HTML шаблон странички отдельно, один раз загружается. Данных хранятся и обновляются с JSON'а отдельно. С JSON данными работать с JavaScript очень просто, к своему веб-серверу прикрутить сохранение или генерацию JSON "на лету" тоже не сложно.


Последний раз редактировалось NStorm Пн авг 10, 2020 09:45:00, всего редактировалось 2 раз(а).

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Пн авг 10, 2020 09:37:52 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2057
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18024
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
NStorm писал(а):
лучше разделите данные и представление
так я и разделил. только с JSON-ом связываться не стал, тупо возвращаю нужный мне <div> и меняю по id его содержимое.

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

скушно, бабоньки!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Пн авг 10, 2020 09:46:01 
Поставщик валерьянки для Кота

Карма: 12
Рейтинг сообщений: 532
Зарегистрирован: Ср июл 17, 2013 13:55:57
Сообщений: 1978
Рейтинг сообщения: 0
Если не страдать красноглазием, то со стороны клиента лучше взять фреймворки, их куча сейчас. Писать на голом JS с нуля сейчас такой же моветон, как CGI скрипты на голом Си.
Из чего-то похожего делал вот такую штуку: https://nstorm.ru/b/
Удаленную управлялку кондиционером + датчик влажности и температуры. 114 строк всего HTML+JS с фреймворками и написалось быстро. У меня там поллинг раз в 5с (мне быстрее не надо) и в данном примере только обратно данные на сервер постятся, но тут уже можно легко догадаться как передалать. По ссылке страничка к железке не подключена, в реальной версии у меня данные с датчика с сервера поллятся еще, но стираничка подключенная к железке уже в другом месте и за паролем ) А тут весь исходник можно глянуть по Ctrl+U.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Пн авг 10, 2020 12:46:12 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2057
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18024
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
NStorm писал(а):
Если не страдать красноглазием

Код:
<script type="text/javascript" >
    var x = new XMLHttpRequest();

   x.onerror = function() {
      var data = document.getElementById("data");
      if (data != null) {
          data.innerHTML = '<div class="err">Device not connected</div>';
      }
   };

    x.onload = function (){
     var s = x.responseText;
     if(s.indexOf('ERROR') == 0){
       alert('Пардон!');
       return;
     }

      var data = document.getElementById("data");
      if (data != null) {
          data.innerHTML = s;
      }
    };

    function get_data(s) {
     if (s != ""){
        s = "data?" + s;
     } else {
        s = "data";
     };
       x.open("GET", s, true);
       x.send(null);
     timer = setTimeout(get_data, 333, "");
    };

    function change_mode() {
     clearTimeout(timer);
     get_data("mode");
    };

    var timer = setTimeout(get_data, 333, "");

    function prn(){
     clearTimeout(timer);
     get_data("prn");
    };
</script>
вы считаете, что изучить какой-то там фреймворк будет менее красноглазно, чем то, что я уже написал?

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

скушно, бабоньки!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Пн авг 10, 2020 14:01:55 
Поставщик валерьянки для Кота

Карма: 12
Рейтинг сообщений: 532
Зарегистрирован: Ср июл 17, 2013 13:55:57
Сообщений: 1978
Рейтинг сообщения: 0
ARV, фраза "если не страдать красноглазием" была отнесена не вам. Есть тут любители писать только на чистом Си CGI скрипты с нуля каждый раз.

А вы как хотите делайте, я просто предложил как вариант и пример дал. На самом деле фрэймворк особо не изучал, по примерам быстренько склепал что мне нужно было. Просто если еше понадобится интерфейс и развитие, с фреймворками проще. Просто загляните в исходники странички по моей ссылке, может интересно станет. Там довольно-таки очевидны многие вещи будут и без изучения AngularJS.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Пн авг 10, 2020 19:02:53 
Собутыльник Кота
Аватар пользователя

Карма: -12
Рейтинг сообщений: -25
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 2525
Рейтинг сообщения: 0
NStorm, любой фреймворк - лютое зло!
Я вот привел пример libonion - хорошая библиотека для веб-сервисов на компьютере. И писать CGI на С или С++ — ничуть не моветон! Это очень удобно. Намного удобней, чем пхытон какой-нибудь.

_________________
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Чт авг 13, 2020 09:14:25 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2057
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18024
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
AAX писал(а):
Это происходит от того, что XMLHttpRequest.onerror не в стандарте
короче, и та хрень, что в стандарте по рекомендованой ссылке (listener с event-ом типа "error") нихрена на мобильном браузере не работает.

выкрутился таймерами: при отправке запроса устанавливаю на 1,5 секунды, а при получении ответа сбрасываю таймер. если ответ не пришел, срабатывает таймер.

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

скушно, бабоньки!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Ср авг 19, 2020 01:50:05 
Вымогатель припоя

Карма: 9
Рейтинг сообщений: 151
Зарегистрирован: Сб ноя 16, 2013 23:34:34
Сообщений: 669
Рейтинг сообщения: 0
А можно полюбопытствовать версией android, chrome и кодом? Ежели есть какой-то лог серверных ответов (или как там error формируется), тож было бы полезно.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Ср авг 19, 2020 11:09:45 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2057
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18024
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
Хром последний, автообновляется регулярно. Андроид любой, тестировалось на версиях от 6 до 10. пока не сделал отдельные таймауты на "неответ" сервера, андроид не замечал, что ответы перестали приходить, т.е. метод error не срабатывал. я все описывал.

никаких логов не веду.

Добавлено after 1 minute 4 seconds:
да и какие логи, если "не ответ" возникает из-за выгрузки сервера? я выгружаю сервер, а браузеры продолжают по таймеру слать запросы... хром ловит error, анроид нет.

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

скушно, бабоньки!


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 62 ]    , , 3,  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y