首頁 > 後端開發 > php教程 > 帶有Laravel 5.1和活動廣播的實時應用程序

帶有Laravel 5.1和活動廣播的實時應用程序

Christopher Nolan
發布: 2025-02-17 11:14:10
原創
462 人瀏覽過

Laravel 5.1的活動廣播簡化了PHP中的實時應用程序開發。此功能使發布事件可用於實時PubSub解決方案,例如Pusher或Redis。 本文演示了使用此功能構建實時的待辦事項應用程序。

>

Real-time Apps with Laravel 5.1 and Event Broadcasting

我們將把基本的待辦事項應用程序轉換為實時應用程序。

>

密鑰概念:

    > Laravel 5.1的活動廣播通過向Pusher或Redis等服務發布活動來促進實時PHP應用程序。
  • > 通過定義創建,更新或刪除項目時觸發的Laravel事件來實現實時功能。 這些事件利用
  • >接口。
  • 實時雲服務ShouldBroadcast Pusher無縫集成。 您需要一個推送帳戶及其服務器庫。推送器JavaScript客戶端處理客戶端事件處理。
  • Laravel的廣播顯著增強了PHP的實時功能,以前在Node.js等平台中更常見。 該框架的可擴展性通過作曲家軟件包或自定義驅動程序支持其他實時解決方案。
  • 設置:

最簡單的方法是改進了宅基地。 另外,請確保安裝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.phpapp/Events/ItemDeleted.php)來觸發我們的廣播事件(在服務提供商中(itemAction))。 用原始文章中的代碼替換內容(在此處太長而無法複製)。

>

推動器集成:

  1. >註冊:創建一個推動器帳戶和一個新的應用程序(例如,“ todo-app”)。注意app_idkeysecret

  2. >

    >推動器PHP服務器庫:安裝推動器PHP服務器庫:

    git clone https://github.com/cwt137/l51-todo-app todo-app
    cd todo-app
    composer install
    php artisan migrate
    登入後複製
    登入後複製
  3. > javascript:>在中的關閉</body>標籤之前添加以下JavaScript代碼:resources/views/index.blade.php

    php artisan make:event ItemCreated
    php artisan make:event ItemUpdated
    php artisan make:event ItemDeleted
    登入後複製
    登入後複製
  4. >>評論現有的javascript:public/js/app.js>中,請評論addItem()>和removeItem()函數呼叫。

  5. 創建pusher.jscreatepublic/js/pusher.js並添加原始文章中的JavaScript代碼(在此處太長而無法重現)。這訂閱了itemAction頻道並處理事件以更新UI。

測試實時應用程序:>

>在您的文件中設置推送器憑據:>

.env>打開兩個瀏覽器窗口。 一個窗口中的更改應立即反映在另一個窗口中。

>
composer require 'pusher/pusher-php-server:2.2.1'
登入後複製

結論:

Laravel 5.1的活動廣播簡化了PHP中的實時應用程序開發。 此功能與Pusher這樣的服務結合使用,提供了一種強大而有效的方法來創建動態和響應迅速的應用程序。 該框架的可擴展性允許根據需要與其他實時解決方案集成。 由於長度,此處省略了原始文章的常見問題解答,但涵蓋了Laravel中的事件廣播的其他詳細信息。

以上是帶有Laravel 5.1和活動廣播的實時應用程序的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板