Почему я не могу открыть UDP-соединение на стороне клиента (в браузере)?
Я знаю, что есть WebSockets. Я посмотрел на это от себя - это пример языка дартс.
void initWebSocket([int retrySeconds = 2]) {
var reconnectScheduled = false;
outputMsg("Connecting to websocket");
ws = new WebSocket('ws://echo.websocket.org');
void scheduleReconnect() {
if (!reconnectScheduled) {
new Timer(new Duration(milliseconds: 1000 * retrySeconds), () => initWebSocket(retrySeconds * 2));
}
reconnectScheduled = true;
}
ws.onOpen.listen((e) {
outputMsg('Connected');
ws.send('Hello from Dart!');
});...
Это не что иное, как создание новых связей и работа с ним уже. Это отдельный поток (фактически, в котором запускается javaScript), соединение устанавливается и так далее. Почему тогда дартс и JavaScript я не могу в одном потоке открыть простое соединение UDP и работать с ним?
PsUDP более предпочтителен для онлайн-браузерных игр в реальном времени.
1 ответ
Решение
Браузеры не поддерживают его из-за ограничений безопасности.
Вы должны взглянуть на WebRTC
смотрите также