2016-04-20 22 views
0

Ich habe eine Laravel-Installation auf einem Windows 10-Rechner. Ich habe diese einfache Strecke geschriebenLaravel 5.2 - Redis - Socket.io veröffentlichen funktioniert nicht

Route::get('/event', function(){ 
    $data = array("key"=>"val"); 
    Redis::publish('test-channel', json_encode($data)); 
}); 

dann habe ich diesen Knoten server.js

var server = require('http').Server(); 
var io = require('socket.io')(server); 

var Redis = require('ioredis'); 
redis = new Redis(); 
redis.subscribe('test-channel'); 

redis.on('message', function(channel, message){ 
    console.log("message retriving.."); 
}); 

server.listen(6001, function(){ 
    console.log('listening on 6001'); 
}); 

Ich habe eine Ubuntu-Installation auf einer virtuellen Maschine auf dem i Redis installiert haben.

Meine Laravel .env Datei ist

BROADCAST_DRIVER=redis 
REDIS_HOST=192.168.1.14 #ubuntu ip 
REDIS_PASSWORD=null 
REDIS_PORT=6379 

Das Problem ist, dass, wenn die Route ‚/ Ereignis‘ ausgeführt wird (und der Knoten-Server lauscht) .. ich erhalten keine Nachricht auf der ' Test-Kanal '

Irgendeine Idee?

Antwort

0

Try-Wechsel:

redis = new Redis(); 

zu:

redis = new Redis('6379', 'Redis'); 
Verwandte Themen