Я пытаюсь использовать веб-сокеты в основном для передачи данных с сервера на клиент о событиях.
Итак, я настроил локально автострада а также Autobahn.js дважды: сам и с помощью этот урок.
Сервер запускается правильно:
./bin/console thruway:router:start
Making a go at starting the Thruway Router
2018-05-23T00:29:33.6760270 debug [Thruway\Peer\Router 17047] New router created
2018-05-23T00:29:33.6830490 info [Thruway\Peer\Router 17047] Starting router
2018-05-23T00:29:33.6853010 info [Thruway\Transport\RatchetTransportProvider 17047] Websocket listening on 127.0.0.1:9998
2018-05-23T00:29:33.6864550 info [Thruway\Transport\RatchetTransportProvider 17047] Websocket listening on 127.0.0.1:9999
2018-05-23T00:29:33.6865040 info [Thruway\Peer\Router 17047] Starting loop
Код браузера очень прост:
var connection = new autobahn.Connection({
url: 'ws://127.0.0.1:9999/',
realm: 'realm1'
});
connection.onopen = function (session, details) {
console.info('Connection opened: ' + session + ' | ' + details);
};
connection.onclose = function (reason, details) {
console.info('Connection closed: ' + reason + ' | ' + details);
};
connection.open();
Но я вижу ошибку 426 No Sec-WebSocket-Protocols requested supported
в браузерах (Safari, Chrome, FireFox).
После некоторого поиска в Google я нашел только очень старые вопросы / ответы (2014..2016), где люди говорят, что Authobahn.js использует WAMPv2, но Ratchet только WAMPv1 .. но я вижу, что WAMPv2 поддерживается библиотекой Thruway в 2017-2018 годах.
У меня простой вопрос: как заставить это работать? Или, может быть, с angularWAMP? Любые примеры приветствуются, спасибо.
Версии:
~ composer show -D
sensio/distribution-bundle v5.0.21 Base bundle for Symfony Distributions
sensio/framework-extra-bundle v5.1.6 This bundle provides a way to configure your controllers with annotations
sensio/generator-bundle v3.1.7 This bundle generates code for you
symfony/monolog-bundle v3.2.0 Symfony MonologBundle
symfony/phpunit-bridge v4.0.9 Symfony PHPUnit Bridge
symfony/polyfill-apcu v1.8.0 Symfony polyfill backporting apcu_* functions to lower PHP versions
symfony/swiftmailer-bundle v3.2.2 Symfony SwiftmailerBundle
symfony/symfony v3.4.9 The Symfony PHP framework
thruway/pawl-transport 0.5.0 Pawl WebSocket Transport for Thruway Client
voryx/thruway-bundle 0.3.1 WebSockets (WAMP2) integration for Symfony2
Автобан 18.3.2
Задача ещё не решена.
Других решений пока нет …