色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

node.js - laravel5.2 broadcaster無法廣播,且不報錯?

瀏覽:104日期:2024-08-05 08:50:20

問題描述

環境:Mac ,laravel版本 5.2.x ,valet

問題描述:

在用laravel配合nodeJS的socket.io做websocket時出現的錯誤。

這是socket的服務端代碼

var http = require(’http’).Server();var io = require(’socket.io’)(http);var Redis = require(’ioredis’);var redis = new Redis();redis.subscribe(’test-channel’);redis.on(’message’, function (channel, message) { console.log(message); message = JSON.parse(message); io.emit(channel + ’:’ + message.event, message.data);});http.listen(3001, function () { console.log(’Server is running at 3001!’);});

這是route代碼

Route::get(’/test’, function () { $data = [’event’ => ’inbox’,’data’ => [ ’name’ => ’WTF’] ]; Redis::publish(’test-channel’, json_encode($data)); return ’Done’;});

然后訪問/test頁面后,命令行顯示如圖:

node.js - laravel5.2 broadcaster無法廣播,且不報錯?

前端也收到了數據,就不展示了,問題的關鍵在于

當我將route的代碼改成如下:

Route::get(’/test’, function () { event(new AppEventsTest(’ARE U OK ?’)); return ’Done’;});

然后通過

php artisan make:event Test

生成的event事件代碼如下:

<?phpnamespace AppEvents;use AppEventsEvent;use IlluminateQueueSerializesModels;use IlluminateContractsBroadcastingShouldBroadcast;class Test extends Event implements ShouldBroadcast{ use SerializesModels; public $name; public function __construct($name) {$this->name = $name; } public function broadcastOn() {return [’test-channel’]; }}

然后訪問/test頁面,命令行無輸出

在這之前,是配置過broadcast的driver的

.env文件里

BROADCAST_DRIVER=redis

config的cache也已經clear過了

從使用Redis::publish成功可以看出,laravel和Redis鏈接是成功的,那么問題應該出在哪里呢?

還請大神指教!

問題解答

回答1:

經過重開項目,復制同樣代碼,執行正常后發現,是原有項目的QUEUE_DRIVER=redis造成的問題,應該是隊列的問題。

將QUEUE_DRIVER=redis改成sync即可。

回答2:

謝邀。 大概看了下代碼,好像沒啥問題。不過有一個地方你沒說明,是不是隊列執行那里出了問題。broadcasting event 會把 event 放到一個隊列里執行,是不是你沒有啟動隊列監聽。

先嘗試把你event里的 use IlluminateContractsBroadcastingShouldBroadcast; 給后面幾個 Now:變成 use IlluminateContractsBroadcastingShouldBroadcastNow; 然后測試看能否廣播。

如果可以的話,把 Now 去掉改回去,然后在命令行執行 php artisan queue:listen 后再發廣播

主站蜘蛛池模板: 在线观看一区 | 亚洲精品系列 | 99国内精品 | 久久国产视频网站 | 欧美白人猛性xxxxx交69 | 亚洲精品国产一区二区 | 在线观看成年人免费视频 | 午夜宅男在线永远免费观看网 | 特级淫片欧美高清视频蜜桃 | 一区二区不卡视频在线观看 | 鲁丝一区二区三区不属 | 国产精品三级国语在线看 | 黄色作爱视频 | 国产一级一片免费播放视频 | 国产亚洲精品91 | 欧美日韩亚洲一区二区三区在线观看 | 国产成人免费午夜性视频 | 国产精品久久久久毛片真精品 | 国产精品久久久久久久久久免费 | 一区二区三区不卡在线观看 | 青青青免费手机版视频在线观看 | 日本免费网站视频www区 | 精品亚洲成a人在线观看 | 国产精品午夜性视频网站 | 欧美亚洲综合另类在线观看 | 国产精品porn | 91丨九色丨首页在线观看 | 99热免费在线 | 伊人色综合久久成人 | 亚洲男人的天堂久久香蕉网 | 国产精品99久久久久久人 | 中文字幕精品视频在线 | 亚洲一区www | 日韩a毛片免费全部播放完整 | 手机日韩理论片在线播放 | 中国的毛片 | 欧美一级视频免费观看 | 男女精品视频 | 欧美第一网站 | 成人99国产精品一级毛片 | 欧美色老头oldvideo |