LINUX.ORG.RU

udp echo или ping через js

 , , ,


0

1

Со стороны клиента на сайте нужно пропинговать сторонний сервис. Можно ли javascript'ом через UDP слать и получать пакеты? Если нет, то можете предложить какой-нибудь вариант определения задержки между хостом и клиентом в js (К примеру может быть так, что открыт только UDP порт).

написать инструкцию юзеру «открой консоль, пропингуй указанный адрес, результат впиши вот в эту формочку и нажми send»

Harald ★★★★★
()

Ужас какой. Что всех так тянет использовать браузер не по назначению? Я давно подозревал, что извращенцы на вебсокетах не остановятся, скоро вы СУБД на жаваскрипте писать будете.

r_asian ★☆☆
()
Ответ на: комментарий от r_asian

Ты отстал от жизни, их есть уже. Скоро JS+HTML+CSS будет на твоем десктопе вместо гуя.

entefeed ☆☆☆
()
Ответ на: комментарий от preepunk

1) Создаёшь серверный скрипт, принимающий параметром имя домена или IP(разумеется должна быть у этого скрипта авторизация по сессии)

2) В скрипте через exec или что там, вызываешь в консоли ping, кормишь ему этот параметр, парсишь выхлоп, упаковываешь в json и воротаешь

3) Теребонькаешь этот скрипт Ajax'ом как тебе хочется, используя JSON.parse для декодинга

4) ...

5) выгода!!!

p.s. грёбаный стыд! UDP через жабаскрипт .. да тебе ни один нормальный браузер ajax-запрос на домен, отличный от того, на котором сайт крутится, сделать не позволит.

r_asian ★☆☆
()
Ответ на: комментарий от r_asian

я лишь скажу, что пинг с сервера А до сервера B и пинг от клиента до сервера B это абсолютно разные вещи.

preepunk
() автор топика
Ответ на: комментарий от preepunk

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

r_asian ★☆☆
()

udp врядли если только расширения поискать или апплет джавы

проще реализовать сходный перпетуп на эйджаксе

anonymous
()

На том сайте веб поднят ? найди там какую-нибудь картинку побольше размером. Напиши джаваскрипт. Пусть в невидимом диве создаст <img> и грузит туда эту картинку. Размер поделишь на время - получишь конкретные цифры на стороне клиента.

ovax ★★★
()
Ответ на: комментарий от ovax

И да, некоторые сайты проверяют referer, и картинку могут не отдать :)

ovax ★★★
()
Ответ на: комментарий от ovax

На том сайте веб поднят
На том сайте веб поднят
На том сайте веб поднят

entefeed ☆☆☆
()
Ответ на: комментарий от r_asian

но все они предусматривают установку на машину клиента стороннего по

И чем это принципиально противоречит использованию браузера?

umren ★★★★★
()
Ответ на: комментарий от PolarFox

Так можно определить скорость, но не задержку.

Да. Если нужно оценить именно задержку, то загружать множество мелких объектов (картинки, css-файлы, и т.д.) и, исходя из общего времени и количества запросов, вполне можно вычислить средний лаг.

ovax ★★★
()
Ответ на: комментарий от ovax

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

umren ★★★★★
()
Ответ на: комментарий от anonymous

ну если ТСу нужно - пусть обмазывается. зачем - вопрос не ко мне.

dib2 ★★★★★
()
Ответ на: комментарий от ZuBB

Ну писал человек git на яваскрипте. Написал. И выяснилось, что пулить он может, а пушить нет (только через прокси). На этом его интерес и закончился :)

Vit ★★★★★
()
Ответ на: комментарий от ZuBB

В ту же степь идут попытки синхронизироваться по ntp. Дельту посчитать не трудно, а ответ получить - фигушки. Только если кто-то специально настроит сервер на отдачу json.

Vit ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.