html5 - attribute - javascript title
¿Cuál es la diferencia entre la API de inserción y los eventos de servidor enviado? (2)
De la documentación, pude descubrir que la API de inserción y los eventos de servidor enviados son semidúplex, pero ¿por qué dos tecnologías diferentes para la misma funcionalidad? ¿Hay algo más importante en la API Push?
La API Push le permite al servidor enviar una notificación a un cliente incluso cuando su sitio no está abierto, ya que depende de los trabajadores del servicio.
SSE (o WebSockets) funciona siempre que el usuario esté utilizando su sitio.
Hay algunos ejemplos (con documentación) en la sección Web Push
del ServiceWorker Cookbook que pueden ayudarlo a comprender mejor esto.
Utiliza Server Sent Events para conectarse directamente a su sitio web, es bastante fácil.
La tecnología Web Push es mucho más complicada, el navegador de un usuario mantiene una conexión con el servidor push del proveedor del navegador, que recopila y entrega todos los push de sitios web (los multiplexa). Dado que los mensajes pasan a través del servidor de terceros, deben estar cifrados. Para utilizar la API Push, usted (en el lado del cliente) obtiene la URL de punto final de un proveedor específico del navegador, genera una clave de cifrado pública y la envía de vuelta a su servidor para su uso. Luego, en su servidor, cuando desee enviar, cifre el mensaje con la clave y empújelo hasta el punto final.
Información general sobre Web Push
Firefox mantiene una conexión activa a un servicio de inserción para recibir mensajes de inserción mientras esté abierto.
Esta es la principal ventaja de Web Push: puede enviar las notificaciones justo cuando el usuario abre el navegador, no tendrá que visitar su sitio. La desventaja es que necesitará obtener un permiso del usuario para esta suscripción. Otra desventaja es que está lejos de ser ampliamente supported actualmente.