PHP Websockets с Ratchet - пример не работаетPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 PHP Websockets с Ratchet - пример не работает

Сообщение Anonymous »

Сначала вот немного фона. Создал приложение Hello World, как описано здесь. Я скопировал код, немного изменил его (модификации, отмеченные в комментариях кода ниже), установил библиотеку ZMQ (последняя версия, добавлена ​​его в php.ini, отображается в php -m - Короче говоря, она правильно установлена). Но веб -питания не работают. < /P>
< /li>
< /ol>
Я дам свой процесс тестирования с реальными живыми ссылками на свой домен ниже, так что вы можете проверить его самостоятельно. Я запускаю это через SSH и, кажется, подключается правильно. /> < /li>
< /ol>

Код: Выделить всё

$entryData = array(        //hard-coded content of $entryData for simplicity
'cat'     => "macka"
, 'title'   => "naslov"
, 'article' => "tekst"
, 'when'    => time()
);

// This is our new stuff
$context = new ZMQContext();
$socket = $context->getSocket(ZMQ::SOCKET_PUSH, 'my pusher');
$socket->connect("tcp://light-speed-games.com:5555");       //my domain, still using port 5555 as in their example

$socket->send(json_encode($entryData));
< /code>
Этот файл находится здесь. < /p>

 Мой клиент. Моя проблема зависит от браузера и такая же, как и до того, как было добавлено исправление. < /Li>
< /ol>


window.define = function(factory) {    //my addition
try{ delete window.define; } catch(e){ window.define = void 0; } // IE
window.when = factory();
};
window.define.amd = {};




var conn = new ab.Session(
'ws://light-speed-games.com:8080' // The host (our Ratchet WebSocket server) to connect to
, function() {            // Once the connection has been established
conn.subscribe('kittensCategory', function(topic, data) {
// This is where you would add the new article to the DOM (beyond the scope of this tutorial)
console.log('New article published to category "' + topic + '" : ' + data.title);
});
}
, function() {            // When the connection is closed
console.warn('WebSocket connection closed');
}
, {                       // Additional parameters, we're ignoring the WAMP sub-protocol for older browsers
'skipSubprotocolCheck': true
}
);

Этот файл находится здесь. Затем я открываю post.php в Firefox; Консоль Chrome должна показывать сообщение «Новая статья опубликована ...» и т. Д. (Из функции Conn.SubScribe в client.php ). Однако, когда я это делаю, ничего не происходит. Соединение остается открытым (не отображает ошибку «Connection Closed», пока я не выключаю push-server.php через SSH). Консоль остается пустой. < /P>
Я думаю, что это все соответствующая информация за последние пару дней, большая часть которой я потратил на попытку выяснить это. Тем не менее, я не смог даже убедиться, что проблема с кодом или с некоторой настройкой конфигурации сервера, о которой я могу не знать. Итак, я прихожу к вам, надеясь, что кто -то укажет мне в правильном направлении. Соединение устанавливается. Когда я изменяю код на: < /p>

Код: Выделить всё

function() {            // Once the connection has been established
console.log('Connection established');
conn.subscribe('kittensCategory', function(topic, data) {
// This is where you would add the new article to the DOM (beyond the scope of this tutorial)
console.log('New article published to category "' + topic + '" : ' + data.title);
});
}
Тогда подключение установлено , правильно показано в консоли. Поэтому я считаю, что нам нужно устранить неполадок метод подписки. Если кто -то может объяснить мне, как это работает, и что именно «тема» и «данные» должны быть, это было бы очень полезно. Документация Autobahn использует URL в качестве аргумента для этого метода (см. Здесь).

Подробнее здесь: https://stackoverflow.com/questions/207 ... oesnt-work
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

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

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»