@alikenski
Fullstack Web Developer

Как объединить PHP + Socket.io?

Есть приложение backend на PHP(Slim framework) front AngularJS.
Как подключить Socket.io к бэку? Кто сталкивался с этим. Пробывал ставить Workerman/PHPSocketIO но в консоли браузера пишет "only run in command line mode" и net::ERR_CONNECTION_REFUSED

PHP SERVER:
use Workerman\Worker;
    use PHPSocketIO\SocketIO;
   
    require 'vendor/autoload.php';
    $app = new \Slim\App();
    $io = new SocketIO(2020);
    $io->on('connection', function($socket){
        $socket->on('add', function($msg){
            $socket->emit('listen', $msg);
        });
    });

    Worker::runAll();


JS:
Socket.emit('add', '123');
    
    Socket.forward('listen', $scope);
    $scope.$on('socket:listen', function(ev, data){
        console.log(data);
    })
  • Вопрос задан
  • 2426 просмотров
Пригласить эксперта
Ответы на вопрос 1
skobkin
@skobkin
Гентушник, разработчик на PHP и Symfony.
Ну вам же написали: "only run in command line mode".

Запускайте воркер в CLI и всё будет работать.

Для этого, как, надеюсь, вы понимаете, требуется воркер запускать не в контекте обработки запроса из браузера, а отдельно.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы