Từ tài liệu tôi có thể tìm ra rằng Push API và Server Sent Events cả hai đều song công nhưng tại sao hai công nghệ khác nhau cho cùng một chức năng? Có điều gì quan trọng hơn trong API đẩy không?Sự khác biệt giữa Push API và Sự kiện máy chủ được gửi là gì?
Trả lời
API đẩy cho phép máy chủ gửi thông báo cho khách hàng ngay cả khi trang web của bạn không mở, vì trang web đó phụ thuộc vào nhân viên dịch vụ.
SSE (hoặc WebSockets) hoạt động miễn là người dùng đang sử dụng trang web của bạn.
Có một số ví dụ (có tài liệu) trong phần Web Push
của ServiceWorker Cookbook có thể giúp bạn hiểu điều này tốt hơn.
Bạn sử dụng Sự kiện đã gửi trên máy chủ để kết nối trực tiếp với trang web của bạn, điều này khá dễ dàng.
công nghệ Web Đẩy là phức tạp hơn nhiều, trình duyệt của người dùng duy trì một kết nối đến máy chủ đẩy các nhà cung cấp trình duyệt, mà thu thập và cung cấp tất cả push từ các trang web (nhiều thành chúng). Vì thư đi qua máy chủ của bên thứ ba, chúng phải được mã hóa. Để sử dụng Push API, bạn (ở phía máy khách) nhận được URL điểm cuối của nhà cung cấp cụ thể cho trình duyệt, tạo khóa mã hóa công khai và gửi nó trở lại máy chủ của bạn để sử dụng. Sau đó trên máy chủ của bạn khi bạn muốn đẩy, bạn mã hóa tin nhắn bằng cách sử dụng phím và đẩy nó đến điểm cuối.
Firefox duy trì một kết nối hoạt động đến một dịch vụ push để nhận tin nhắn push miễn là nó đang mở.
Đây là lợi thế chính của Web Push - bạn có thể gửi thông báo ngay khi người dùng mở trình duyệt, anh ấy sẽ không phải truy cập trang web của bạn. Điểm bất lợi là bạn sẽ cần phải có sự cho phép từ người dùng cho thuê bao này. Một bất lợi khác là nó đang được phổ biến rộng rãi hiện tại supported.
- 1. Sự khác biệt giữa máy chủ dựa trên luồng và máy chủ dựa trên sự kiện là gì?
- 2. Sự khác biệt giữa "SMS Push" và "WAP Push" là gì?
- 3. Sự khác biệt giữa git push và git pull là gì?
- 4. sự khác biệt giữa/* ... */và là gì/** ... */
- 5. MongoDb: Sự khác biệt giữa $ push/$ addtoset
- 6. sự khác biệt giữa ajax và gửi
- 7. Sự kiện do máy chủ gửi và bỏ phiếu
- 8. Sự khác biệt giữa việc sử dụng `máy chủ đường ray` và` rackup` là gì?
- 9. Sự khác biệt giữa yêu cầu, phản hồi và máy chủ là gì?
- 10. sự khác biệt giữa truncate và xóa trong máy chủ sql là gì?
- 11. Sự khác biệt giữa engine.io và socket.io là gì?
- 12. Sự khác nhau giữa các sự kiện logic và sự kiện gốc trong GWT là gì?
- 13. Sự khác biệt giữa các sự kiện Window.Loaded và Window.ContentRendered là gì
- 14. Sự khác biệt giữa push, grow, và điền vào MigLayout là gì?
- 15. Sự khác biệt giữa push và offset trong hệ thống lưới điện là gì?
- 16. Sự khác biệt giữa socket.send() và socket.sendall() là gì?
- 17. Sự khác biệt giữa ASP.NET và ASP.NET MVC là gì?
- 18. Sự khác biệt giữa thẻ layout_alignStart và layout_alignLeft là gì?
- 19. Cách đóng các sự kiện Sự kiện máy chủ gửi
- 20. Sự khác biệt giữa "Thread.currentThread(). GetName" và "this.getName" là gì?
- 21. Sự khác biệt giữa tính năng và nhãn là gì?
- 22. Sự khác biệt giữa các sự kiện Bubbling và Tunneling
- 23. Sự khác biệt giữa Raphael và gRaphael là gì?
- 24. Sự khác nhau giữa REST và API là gì?
- 25. Sự khác biệt giữa -anydpi và -nodpi là gì?
- 26. Sự khác biệt giữa Chủ đề công nhân CLR và Chủ đề công nhân là gì?
- 27. Sự khác biệt giữa shouldoverrideurlloading và shouldinterceptrequest là gì?
- 28. Sự khác biệt giữa dma_mmap_coherent và remap_pfn_range là gì?
- 29. Sự khác biệt giữa setDisplayHomeAsUpEnabled và setHomeButtonEnabled là gì?
- 30. Sự khác biệt giữa chẩn đoán và metaheuristics là gì?
Tôi cũng bối rối nhưng chỉ tìm thấy nhóm push-api đề cập đến Sự kiện được máy chủ gửi. https://github.com/w3c/push-api/issues/104#issuecomment-69745798 –