Например TDA7294

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



Текущее время: Вт мар 09, 2021 14:05:27

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


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



Начать новую тему Ответить на тему  [ Сообщений: 62 ]  1, , ,  
Автор Сообщение
Не в сети
 Заголовок сообщения: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Пт май 22, 2020 08:57:10 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 93
Рейтинг сообщений: 1833
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 15706
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
Может кто-то объяснить на пальцах, как реализуется такая фича, как уведомление со стороны сервера о том, что инфа на html-страничке изменилась и клиент должен обновить страничку?

Допустим, я сделал программку, которая по мониторит определенный порт и выдает по запросу в этот порт генерируемую HTML-страничку. браузер эту страничку показал, а на страничке, допустим, напряжение АЦП показано.

моя программка измерила в очередной раз напряжение - как она может уведомить клиента о необходимости обновить страничку? Или просто надо рефрешить страничку почаще? как это по уму делается в нынешних условиях?

мне только объяснять надо попроще... и, если есть решение, то тоже минимальной сложности, потому как самое тупое - каждую секунду обновлять страничку, - я и так знаю, как сделать, и альтернатива мне желательна примерно такого уровня сложности... если она есть, конечно.

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

Добавлено after 2 minutes 20 seconds:
да, минус моего тупого решения очевиден - страничка будет "мерцать" наверняка при перезагрузке. вот потому и ищу альтернативу... чтобы обновлять, возможно, не все, а что-то... ну, в этих технологиях я вообще профан... может, вообще чушь несу...

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


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

Карма: 45
Рейтинг сообщений: 257
Зарегистрирован: Пн апр 19, 2010 00:04:18
Сообщений: 9932
Откуда: Малороссия
Рейтинг сообщения: 0
зачем нттр? для андроида куча готовых решений есть, да хоть mqtt, blink,


Последний раз редактировалось kaetzchen Пт май 22, 2020 09:25:36, всего редактировалось 1 раз.

Вернуться наверх
 
Друзья! Скоро Новый Год! Китайский! Но мы работаем и в праздники тоже!

JLCPCB, всего $2 за прототип печатной платы! Цвет - любой!

Отличное качество, подтвержденное более чем 600,000 пользователей! Более 10,000 заказов в день.

Зарегистрируйтесь и получите два купона по 5$ каждый:https://jlcpcb.com/quote

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

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

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


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

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

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Пт май 22, 2020 09:51:53 
Друг Кота
Аватар пользователя

Карма: 88
Рейтинг сообщений: 3013
Зарегистрирован: Пн фев 09, 2009 22:19:49
Сообщений: 11010
Откуда: Старое захолустье восточнее Новой Москвы
Рейтинг сообщения: 0
Вы неправильно понимаете идеологию клиент-серверных взаимодействий.
Серверу лишь положено обслуживать запросы. Поэтому в броузеров есть функция задания периодичности проведения обновления информации с сервера. Там, где присутствует, проверка по дате странички.

Какой будет протокол, это роли не имеет.

Если в рамках идеологии клиент-серверных нужно проводить обновление с удаленной стороны, то меняйте местами клиента с сервером.

Либо устраивайте на удаленной стороне активного агента, как например, в медийных потоковых рассылках.


Вернуться наверх
 
Как сделать ИП с ультрашироким диапазоном?

Ключевыми особенностями высоковольтных SiC MOSFET Wolfspeed являются малое сопротивление канала в открытом состоянии и минимальное значение паразитных емкостей, что позволяет максимально снизить статические и динамические потери, и, соответственно, увеличить рабочую частоту преобразователей.

Читать статью>>
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Пт май 22, 2020 09:56:35 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 93
Рейтинг сообщений: 1833
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 15706
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
Муркиз писал(а):
Либо устраивайте на удаленной стороне активного агента, как например, в медийных потоковых рассылках
вот примерно об этом я и спрашиваю - как это делается? активный агент, как я понимаю, это java-скрипт или что-то типа того, указание на загрузку которого я в коде своей страничке и отправляю? браузер его грузит, запускает, а скрипт потом сам шлет в мою программку запросы и отрисовывает полученные результаты?

моя предполагаемая программа будет работать на компьютере. не хотелось бы всякие апачи и т.п. ставить, хотелось бы обойтись только мониторнгом порта и выдачей в него чего-то там... возможно ли это?

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


Вернуться наверх
 
STM32L5 – первое семейство ST на ядре Cortex-M33 с ультранизким потреблением

Первое семейство STM32L5 на базе ядра ARM Cortex-M33, флагман семейств ST с низким потреблением. Область применения IoT, расходомеры, умные часы, промышленные датчики и многое другое. Опубликованы материалы двух практических вебинаров по расчету энергопотребления и работой с TrustZone. Рассмотрены особенности и примеры практической реализации CAN FD на STM32L5.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Пт май 22, 2020 12:32:54 
Друг Кота
Аватар пользователя

Карма: 88
Рейтинг сообщений: 3013
Зарегистрирован: Пн фев 09, 2009 22:19:49
Сообщений: 11010
Откуда: Старое захолустье восточнее Новой Москвы
Рейтинг сообщения: 0
Возможно. DDOS в пределе это называется. Вот и бери за шаблон его скрипты для броузера. Если просто закольцованный цикл с запросом трудности написать составляют.


Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Ср май 27, 2020 07:14:18 
Друг Кота

Карма: 46
Рейтинг сообщений: 264
Зарегистрирован: Чт фев 20, 2014 18:57:55
Сообщений: 12574
Рейтинг сообщения: 0
Простой вариант - использовать мета-тег refresh на страничке, будет автообновляться и мерцать, вариант посложнее можно поискать по "ajax примеры" - это именно скрипт, тянущий данные со специальной страницы, содержащей только данные, потом скрипт подменяет значения в обьектах страницы без ее перезагрузки.


Вернуться наверх
 


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

Карма: 93
Рейтинг сообщений: 1833
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 15706
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
Morroc писал(а):
использовать мета-тег refresh на страничке
это мне известно, и в самом первом своем сообщении я об этом писал.
Morroc писал(а):
это именно скрипт
меня вот этот вариант больше интересует, но без "тянущихся с других сайтов" скриптов. т.е. мне бы надо скрипты, внедренные сразу в HTML-код возвращаемой странички.

тут бы просто понять, как следует поступать... таймер какой-то, что ли, нужен? или какой-то способ открыть "канал" и ждать, когда по этому каналу придут данные, на которые потом реагировать? вот в этом затык. я понятия не имею, какие средства в джаваскрипте есть для подобного... и есть ли вообще...

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


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

Карма: 46
Рейтинг сообщений: 264
Зарегистрирован: Чт фев 20, 2014 18:57:55
Сообщений: 12574
Рейтинг сообщения: 0
Понятно. Так тоже делают, можно по "comet ajax" почитать если оставаться в рамках http или "javascript websocket". Незакрываемое соединение я как то пробовал, websocket нет. Мне кажется с минимальными заморочками будет классический ajax без push со стороны сервера если обновление по таймеру устраивает, но ради интереса можно попробовать и "канал", с ним разве что какие то события можно "мгновенно" клиенту отправить, мне кажется это для игрушек и чатов только критично.


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

Карма: 93
Рейтинг сообщений: 1833
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 15706
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
я планирую таким образом сделать интерфейс управления оборудованием, поэтому, если есть возможность пихать клиенту данные по инициативе сервера - это бы меня устроило как нельзя лучше.

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

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


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

Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 869
Рейтинг сообщения: 0
Советую сразу же переходить на вебсокеты.
Собственно, сам сейчас занимаюсь поиском легковесной (а не монстра libwebsockets) сишной библиотеки, умеющей wss. В этом случае будет намного проще обеспечить интерактивность и асинхронность.
Если же особо шустрой реакции не нужно, можно на старых добрых CGI делать взаимодействие. Но в этом случае будет сложней обеспечить безопасность: каждый раз придется передавать "сессионный ключ", т.е. он будет мелькать по нескольку раз в секунду!

_________________
Я на гитхабе, в ЖЖ


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

Карма: 46
Рейтинг сообщений: 264
Зарегистрирован: Чт фев 20, 2014 18:57:55
Сообщений: 12574
Рейтинг сообщения: 0
На телефоне не осилю пример, с копипастом беда полная или я пользоваться не умею ) ajax и прочее как принцип, библиотеки готовые можно и не использовать, если в локалке и без прокси, то можно просто открывать http-запрос javascript'том и не закрывать, проверяя по таймеру нет ли новых данных в ответе, точно не помню какой компонент так может, гляну позже.


Последний раз редактировалось Morroc Ср май 27, 2020 10:56:46, всего редактировалось 2 раз(а).

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

Карма: 93
Рейтинг сообщений: 1833
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 15706
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
Morroc писал(а):
можно просто открывать http-запрос javascript'том и не закрывать, проверяя по таймеру нет ли новых данных в ответе
вот как это делать?! что там за классы в этом джаваскрипте, что за методы и т.п.? я вчера ковырял эту тему несколько часов, так пока сообразил, что для формирования строки с числами и текстом можно тупо написать var s = "число равно" + 12; и в результате в s у меня будет строка "число равно 12"... темный мрачный лес, короче

Eddy_Em писал(а):
можно на старых добрых CGI делать взаимодействие. Но в этом случае будет сложней обеспечить безопасность: каждый раз придется передавать "сессионный ключ", т.е. он будет мелькать по нескольку раз в секунду!
безопасность пока вообще никак меня не волнует - процесс чисто технологический, безопасный по сути, не коммерческий. а вот что такое сессионный ключ, как он делается, куда и чем отправляется, и для чего служит - вот это я не понимаю совсем.

серверная часть у меня пишется на freepascal, и состоит из модуля Indy HTTP Server, который тупо выдает мне GET-запрос в виде строки... и что там в ней за что отвечает, я понятия не имею. куки какие-то... :facepalm:

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


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

Карма: 46
Рейтинг сообщений: 264
Зарегистрирован: Чт фев 20, 2014 18:57:55
Сообщений: 12574
Рейтинг сообщения: 4
Скорее всего это то, что по умному называется SSE, но в этом случае мы получаем только инфу с сервера, в обратную сторону придется как то переоткрыть канал, отправив в новом запросе команду, мне такое не надо было. EventSource(url)

Для управления можно не закрывать соединение со стороны сервера пока нечего отправить клиенту, а как только клиент получит новые данные сразу открывать новое соединение обычным XMLHttpRequest(). Двунаправленно без гемороя websocket, но это уже не http и я не пробовал.


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

Карма: 93
Рейтинг сообщений: 1833
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 15706
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
Morroc писал(а):
по умному называется SSE, но в этом случае мы получаем только инфу с сервера
то что надо! :beer:
SSE - это именно то самое, что я и искал!
проверю, насколько это будет работать с моим самописным сервером :)))

Добавлено after 56 minutes 12 seconds:
теперь бы еще понять, как со стороны сервера послать это сообщение... при помощи FreePascal...

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


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

Карма: 46
Рейтинг сообщений: 264
Зарегистрирован: Чт фев 20, 2014 18:57:55
Сообщений: 12574
Рейтинг сообщения: 0
Экспериментировал на виндовом IIS/ ASP, там достаточно было не завершать скрипт страницы и делать response.flush для сброса буфера клиенту. Насколько это накладно не смотрел.


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

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

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: HTTP: взаимодействие клиента и сервера
СообщениеДобавлено: Ср май 27, 2020 22:02:59 
Опытный кот

Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 869
Рейтинг сообщения: 0
безопасность пока вообще никак меня не волнует - процесс чисто технологический, безопасный по сути, не коммерческий. а вот что такое сессионный ключ, как он делается, куда и чем отправляется, и для чего служит - вот это я не понимаю совсем.

Тогда все вообще просто: никаких сессионных ключей не нужно. Просто рисуем веб-морду, которую можно показывать либо своим же демоном (но для этого придется от рута его запускать, что плохо), либо тем же nginx или апачем.
Для связи с железякой запускаем свой демон, который слушает определенный порт. А веб-морда при необходимости делает веб-запросы на этот порт.
Например, таким образом я сравнительно недавно сделал фокусировку нашего метрового телескопа. Пока все в локалке выполняется, решили не париться с авторизацией (а если кто из студентов будет вредить, по логам вычислим и набьем морду ☺). Веб-морда содержит необходимые поля ввода/вывода, а общается с демоном посредством простых веб-запросов (демон также принимает и запросы по нормальным сокетам - для возможности автоматизации работы). Собственно, кода той самой взаимосвязи - не так уж и много. Основное - работа с самой железкой.

Ну, а если нужна реальная асинхронность, то только веб-сокеты.

_________________
Я на гитхабе, в ЖЖ


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

Карма: 93
Рейтинг сообщений: 1833
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 15706
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
Eddy_Em писал(а):
от рута его запускать
какие там еще руты?! Win10, на крайний случай, Win7.

в общем, я практически наметил себе путь решения... буду тупо выдавать в браузер страничку со скриптом, который будет каждые N-мс слать на сервер запрос, а сервер будет ему возвращать уже подготовленные атрибуты элементов странички, которые скрипт налету и будет менять - вот и получится обновление страницы без мерцаиня.

тупо, конечно, нерационально наверняка, но вряд ли что лучше я смогу освоить за разумное время - мне еще вспоминать HTML-верстку с CSS, и с нуля учиться работать с javascript... тут не до высоких технологий.

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


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

Карма: 41
Рейтинг сообщений: 302
Зарегистрирован: Пт сен 07, 2018 20:20:02
Сообщений: 2253
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Eddy_Em, смысл сваливаться на уровень веб-сокетов, если есть стандартизованный Push API?
ARV, Здесь с примером, как на своем веб-сервере настроить push-уведомления


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

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


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

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


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

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


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