В чем разница между Push API и событиями, отправленными сервером?

Из документации я понял, что Push API и Отправленные сервером события являются полудуплексными, но почему две разные технологии для одной и той же функциональности? Есть ли что-то более значимое в Push API?


person Rishul Matta    schedule 29.03.2015    source источник
comment
Я тоже запутался, но только что нашел упоминание команды push-api о событиях, отправленных сервером. github.com/w3c/push-api/issues/104#issuecomment- 69745798   -  person Donghwan Kim    schedule 29.03.2015


Ответы (2)


Push API позволяет серверу отправлять уведомление клиенту, даже если ваш сайт не открыт, поскольку он зависит от сервис-воркеров.

SSE (или WebSockets) работают до тех пор, пока пользователь использует ваш сайт.

В разделе Web Push поваренной книги ServiceWorker есть несколько примеров (с документацией), которые помогут вам понять Это лучше.

person Marco Castelluccio    schedule 09.02.2016

Вы используете Server Sent Events для прямого подключения к вашему веб-сайту, это довольно просто.

Технология Web Push намного сложнее, браузер пользователя поддерживает одно соединение с push-сервером производителя браузера, который собирает и доставляет все push-уведомления с веб-сайтов (мультиплексирует их). Поскольку сообщения проходят через сторонний сервер, они должны быть зашифрованы. Чтобы использовать Push API, вы (на стороне клиента) получаете URL-адрес конечной точки поставщика для конкретного браузера, создаете открытый ключ шифрования и отправляете его обратно на свой сервер для использования. Затем на вашем сервере, когда вы хотите отправить сообщение, вы шифруете сообщение с помощью ключа и отправляете его в конечную точку.

Общая информация о Web Push

Firefox поддерживает активное подключение к службе push-уведомлений, чтобы получать push-сообщения, пока она открыта.

В этом главное преимущество Web Push - вы можете доставлять уведомления, как только пользователь открывает браузер, ему не нужно будет заходить на ваш сайт. Недостатком является то, что вам нужно будет получить разрешение от пользователя для этой подписки. Другим недостатком является то, что в настоящее время он далеко не поддерживается.

Техническая информация о Push API

person user    schedule 18.02.2016