【发布时间】:2020-01-03 03:08:49
【问题描述】:
我从 Laravel 发布消息,但没有进入节点 js 端。我正在使用 Laravel 5.8。
Laravel 代码:
namespace App\Http\Controllers;
use Redis;
class HomeController extends Controller {
public function test(){
$redis = Redis::connection();
$test = $redis->publish('message', json_encode(['foo' => 'bar']));
echo $test; // returned 0
exit;
}
}
NodeJs 代码:
var app = require('express')();
var server = require('http').Server(app);
var io = require('socket.io')(server);
var redis = require('redis');
server.listen(3000);
io.on('connection',function(socket){
console.log('Starting...');
var redisClient = redis.createClient();
redisClient.subscribe('message');
redisClient.on('message', function(channel, data){
data = JSON.parse(data);
console.log(data);
io.emit('message', data);
});
socket.on('disconnect',function(){
redisClient.quit();
});
});
请帮助我。提前致谢。
【问题讨论】:
标签: node.js sockets redis laravel-5.8