摘要:打造你的即時應(yīng)用二消息推送與監(jiān)聽年月日接于上篇博客打造你的即時應(yīng)用一項目初始化構(gòu)建在上一篇博客中介紹了項目的基本構(gòu)建現(xiàn)在進入實戰(zhàn)操作一消息推送創(chuàng)建事件類的廣播推送通過來實現(xiàn)下面通過命令來創(chuàng)建一個事件類為了配合我們的廣播系統(tǒng)使用需要實現(xiàn)接
打造你的Laravel即時應(yīng)用(二)-消息推送與監(jiān)聽
2019年08月04日20:16:21 XXM
接于上篇博客: 打造你的Laravel即時應(yīng)用(一)-項目初始化構(gòu)建
在上一篇博客中,介紹了項目的基本構(gòu)建,現(xiàn)在進入實戰(zhàn)操作.
(一、消息推送) 1.創(chuàng)建事件類Laravel的廣播推送通過Event來實現(xiàn),下面通過artisan命令來創(chuàng)建一個事件類
php artisan make:event TestEvent
為了配合我們的廣播系統(tǒng)使用需要實現(xiàn)==IlluminateContractsBroadcastingShouldBroadcast==接口,就像這樣
class TestEvent implements ShouldBroadcast2.指定推送頻道
更改==broadcastOn==返回的Channel對象
public function broadcastOn() { return new Channel("notice"); }3.監(jiān)聽消息
需要安裝laravel-echo及 socket. io client這兩個包
npm install --save socket.io-client npm install --save laravel-echo
安裝完成后,打開==resources/assets/js/bootstrap.js==文件,添加包含基本Echo對象構(gòu)建的代碼
import Echo from "laravel-echo" window.io = require("socket.io-client"); window.Echo = new Echo({ broadcaster: "socket.io", host: window.location.hostname + ":6001" });
構(gòu)建完成后,在我們的js代碼中開始監(jiān)聽頻道事件.
PS:更改后記得運行==npm run prod || npm run dev==
window.Echo.channel("test-event") .listen("ExampleEvent", (e) => { console.log(e); });4.測試應(yīng)用結(jié)果
我們通過添加一條路由來測試
Route::get("/notice",function(){ $event = event(new AppEventsTestEvent("測試通知")); });
頁面監(jiān)聽效果如下:
以上就完成了基本的消息推送和監(jiān)聽,當(dāng)然還有更多的技巧沒有展示到位,有興趣的同學(xué)可以查詢文檔: https://laravel.com/docs/5.6/... 來獲得更多的知識和技巧.
==TestEvent.php== 完整代碼如下:
message = $message; } /** * Get the channels the event should broadcast on. * * @return IlluminateBroadcastingChannel|array */ public function broadcastOn() { return new Channel("notice"); } }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/106382.html
摘要:今天,讓我們深入研究下的廣播系統(tǒng)。廣播系統(tǒng)的目的是用于實現(xiàn)當(dāng)服務(wù)端完成某種特定功能后向客戶端推送消息的功能。這種使用場景可以完美詮釋廣播系統(tǒng)的工作原理。另外,本教程將使用廣播系統(tǒng)實現(xiàn)這樣一個即時通信應(yīng)用。 這是一篇譯文,譯文首發(fā)于 Laravel 廣播系統(tǒng)工作原理,轉(zhuǎn)載請注明出處。 今天,讓我們深入研究下 Laravel 的廣播系統(tǒng)。廣播系統(tǒng)的目的是用于實現(xiàn)當(dāng)服務(wù)端完成某種特定功能后向...
摘要:即時交互的應(yīng)用在現(xiàn)代的應(yīng)用中很多場景都需要運用到即時通訊,比如說最常見的支付回調(diào),與三方登錄。在生成事件時,已經(jīng)自動添加了該命名空間,該契約只約束方法。會將事件中的允許公開訪問的數(shù)據(jù)通過給定的頻道發(fā)布出去。 即時交互的應(yīng)用 在現(xiàn)代的 Web 應(yīng)用中很多場景都需要運用到即時通訊,比如說最常見的支付回調(diào),與三方登錄。這些業(yè)務(wù)場景都基本需要遵循以下流程: 客戶端觸發(fā)相關(guān)業(yè)務(wù),并產(chǎn)生第三方應(yīng)...
摘要:項目中執(zhí)行以下命令即可三應(yīng)用在中結(jié)合消息隊列可參考使用隊列來完成消息推送。五配置如何創(chuàng)建一個服務(wù),使得客戶端可以用過協(xié)來連接通訊,比如在微信小程序中連接服務(wù)端。微信小程序要求連接時不帶端口號,也就是端口只能是。 一、簡述 GatewayWorker基于Workerman開發(fā)的一個項目框架,用于快速開發(fā)TCP長連接應(yīng)用,例如app推送服務(wù)端、即時IM服務(wù)端、游戲服務(wù)端、物聯(lián)網(wǎng)、智能家居...
閱讀 3056·2021-09-08 10:43
閱讀 1041·2019-08-30 15:53
閱讀 993·2019-08-30 13:51
閱讀 850·2019-08-29 14:03
閱讀 812·2019-08-26 18:35
閱讀 1245·2019-08-26 13:38
閱讀 1594·2019-08-26 10:34
閱讀 3510·2019-08-26 10:21