Node.js 30 – Socket.IO Namspace

0
765

Socket.IO cho phép bạn tạo ra “namespace” riêng cho sockets của bạn, về cơ bản có nghĩa là gán các điểm cuối hoặc các đường dẫn khác nhau.

Đây là một tính năng hữu ích để giảm thiểu số lượng tài nguyên (kết nối TCP) và đồng thời các mối quan tâm riêng biệt của bạn trong ứng dụng bằng cách giới thiệu sự khác biệt giữa các kênh.

Nhiều namspace thực sự chia sẻ cùng một kết nối Websockét do đó tiết kiệm cho chúng ta các cổng trên máy chủ.

Namespace được tạo ra ở phía máy chủ. Tuy nhiên, chúng được máy khách tham bằng cách gửi yêu cầu đến máy chủ.

Namespace mặc định

Namespace gốc ‘/’ là namespace mặc định, được kết nối với máy khách nếu namespace không được chỉ định bởi client trong khi kết nối với máy chủ. Tất cả các kết nối đến máy chủ sử dụng phía máy khách ở đối tượng socket được thự hiện cho namespace mặc định.

Ví dụ

Điều này sẽ kết nối máy khách với namespace mặc định. Tất cả các sự kiện trên kết nối namespace này sẽ được xử lý bởi đối tương io trên máy chủ. Tất cả các ví dụ trước đây đã sử dụng các namespace mặc định để giao tiếp với máy chủ và ngược lại.

Namespace tùy chỉnh

Chúng ta có thể tạo ra các namespace tùy chỉnh của riêng mình. Để thiết lập namespace tùy chỉnh, chúng ta có thể gọi phương thức of ở phía máy chủ.

Thay đổi nội dung app.js như sau

Tiếp theo để kết nối một máy khách với namespace này, bạn cần cung cấp namespace làm tham số cho lời gọi hàm tạo io để tạo một kết nối và một đối tượng socket ở phía máy khách.

Ví dụ để kết nối với namespace ở trên. Cập nhật tệp index.html

Mỗi khi có một ai đó kết nối họ sẽ nhận được sự kiện “chao”

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây