Hướng dẫn broadcast php script - phát tập lệnh php
Giới thiệuHiện nay trong các ứng dụng web, 4 được sử dụng để mang lại các cập nhật đến giao diện người dùng đáp ứng thời gian thực (realtime). Khi dữ liệu được cập nhật trên server, một gói tin sẽ được gửi qua kết nối 4 tới client.server, một gói tin sẽ được gửi qua kết nối 4 tới client. Show Xây dựng một ứng dụng như vậy rất dễ dàng với Laravel bằng việc sử dụng 6 những event thông qua 4. 8 của Laravel cho phép bạn chia sẻ event giữa server-side code với client-side Javascript code.Trong bài viết này, tôi sẽ hướng dẫn các bạn cách cài đặt và sử dụng Broadcasting của Laravel thông qua việc sử dụng Laravel Echo. Chuẩn bị
Cài đặtServer-sideCác config để sử dụng 9 với Laravel đều được lưu trong file 0. Laravel hỗ các broadcast driver như: 1, 2 và 3 cho quá trình phát triển và debugging.
Nếu bạn để giá trị 4 là 5 => bạn sẽ vô hiệu hóa tính năng broadcast.Trước khi broadcasting bất kỳ event nào, bạn phải đăng ký sử dụng 6 trong file 7. Thông thường provider này sẽ bị comment, bạn chỉ cần tìm đến mảng 8 trong file 7 xóa bỏ comment đi.
0 sẽ cần phải truy cập vào session's CSRF nên bạn cần thêm vào 1 HTML element một thẻ 2 chứa CSRF token:
Cài đặt Broadcast driver Tôi sử dụng Redis broadcaster nên tôi sẽ cài thêm thư viện Predis:
Cấu hình cho Queue Trước khi broadcasting event, bạn cần cấu hình và chạy 3. Tất cả event được broadcasting qua queue job sẽ giúp thời giản phản hồi của ứng dụng không bị chậm đi.Client-sideLaravel không implementation một 4 sẵn nên bạn cần sử dụng một 4 của một bên thứ 3. Laravel khuyến khích bạn sử dụng Laravel Echo Server .Bạn cần cài đặt package này global
Sau đó chạy lệnh khởi tạo:
CLI sẽ đưa ra các lựa chọn cho bạn, sau khi hoàn thành, một file laravel-echo-server.json sẽ được tạo ra:
Bạn thực hiện chạy 6 để khởi động Laravel Echo Server
Khi nhận được thông báo như trên, server đã được khởi động, cài đặt thành công. Tạo event khi có data thay đổi trên serverChạy command để tạo event: 7, bạn sẽ có một file với nội dung như sau
Function 8 sẽ tạo ra channel để client có thể lắng nghe ở đó. Có các tùy chọn 9 khác nhau:
Mặc định Laravel sẽ broadcast sử dụng tên của 3, nhưng bạn có thể tự định nghĩa tên bằng hàm 4
Hàm 5 sẽ định nghĩa những dữ liệu nào sẽ được gửi kèm trong các tin 0Vậy là xong, bạn chỉ cần 6 này ở nơi mong muốn, khi event được phát ra, queue job sẽ tự động broadcast event qua driver broadcast.Xác thực khi subcribe vào kênh PrivateTrong file `routes/channels.php, bạn có thể định nghĩa các xác minh để truy cập kênh 1Lắng nghe sự kiện ở phía client.Ở dưới client bạn cần cài thêm các package sau: 2Bạn chỉ cần thêm đoạn này vào trang để lắng nghe từ event từ server-side 3Ở trên mình đang thực hiện subcribe vào channel Private 7, đối với channel Presence bạn thêm tiền tố 8 trước tên channel đã tạo ở trên server để có thể subcribe vào kênh.Kết luậnNhư vậy là mình đã giới thiệu về Broadcasting trong Laravel, và thực hiện một ví dụ về tính năng này. Bài viết còn nhiều thiếu sót, hy vọng nhận được góp ý từ mọi người. (bow) Tham khảo
|