Laravel 5.1的活動廣播簡化了PHP中的實時應用程序開發。此功能使發布事件可用於實時PubSub解決方案,例如Pusher或Redis。 本文演示了使用此功能構建實時的待辦事項應用程序。
>
>
密鑰概念:
ShouldBroadcast
Pusher無縫集成。 您需要一個推送帳戶及其服務器庫。推送器JavaScript客戶端處理客戶端事件處理。 最簡單的方法是改進了宅基地。 另外,請確保安裝Git和Composer。 克隆入門應用程序:
>測試非實時時間應用程序:
git clone https://github.com/cwt137/l51-todo-app todo-app cd todo-app composer install php artisan migrate
添加實時功能:
我們將在項目創建,修改和刪除上觸發三個laravel事件(
,,)。
>廣播事件:ItemCreated
ItemUpdated
這些事件將實現ItemDeleted
>接口。該接口授權A
>用原始文章中提供的代碼替換
>,的內容(太長,無法在此處複製)。 這些事件將數據序列化並在ShouldBroadcast
頻道上廣播。 broadcastOn
>
php artisan make:event ItemCreated php artisan make:event ItemUpdated php artisan make:event ItemDeleted
app/Events/ItemCreated.php
>我們將使用Oloquent的模型事件(app/Events/ItemUpdated.php
,app/Events/ItemDeleted.php
)來觸發我們的廣播事件(在服務提供商中(itemAction
))。 用原始文章中的代碼替換內容(在此處太長而無法複製)。
推動器集成:
>註冊:創建一個推動器帳戶和一個新的應用程序(例如,“ todo-app”)。注意app_id
,key
和secret
。
>推動器PHP服務器庫:安裝推動器PHP服務器庫:
git clone https://github.com/cwt137/l51-todo-app todo-app cd todo-app composer install php artisan migrate
> javascript:>在中的關閉</body>
標籤之前添加以下JavaScript代碼:resources/views/index.blade.php
:
php artisan make:event ItemCreated php artisan make:event ItemUpdated php artisan make:event ItemDeleted
>>評論現有的javascript:在public/js/app.js
>中,請評論addItem()
>和removeItem()
函數呼叫。
創建pusher.js
:public/js/pusher.js
並添加原始文章中的JavaScript代碼(在此處太長而無法重現)。這訂閱了itemAction
頻道並處理事件以更新UI。
測試實時應用程序:>
>在您的
.env
>打開兩個瀏覽器窗口。 一個窗口中的更改應立即反映在另一個窗口中。
composer require 'pusher/pusher-php-server:2.2.1'
結論:
以上是帶有Laravel 5.1和活動廣播的實時應用程序的詳細內容。更多資訊請關注PHP中文網其他相關文章!