#web-push
Вопрос:
Отказ от ответственности: Я знаю, что это не входит в намерения веб-push! Обычно существует серверный сервер, который имеет пустые ключи и отправляет http-запрос в FCM. В моем случае использования безопасность не имеет значения. Я просто хочу знать, можно ли отправить запрос непосредственно в FCM с другой вкладки браузера.
- Есть ли что-нибудь в браузерах, что ограничит это?
- Есть ли что-то в спецификации, что ограничивает это?
- Будет ли FCM отклонять запросы, поступающие из браузера?
В качестве быстрого теста я попытался внедрить https://github.com/web-push-libs/web-push но библиотека предназначена для nodejs.
Для контекста я пытаюсь найти способ отправить ответ WebRTC на одноранговое предложение, не размещая серверную часть. Цель состояла бы в том, чтобы выдавать новый пустой закрытый и открытый ключ от однорангового узла предложения для каждого нового подключения RTCPeerConnection. Затем я мог бы поделиться ключами, зашифровав их в URL-адресе, который мог бы использовать отвечающий одноранговый узел.
Комментарии:
1. «Есть ли что-нибудь в браузерах, что ограничит это?» Да, охрана.
2. Как вы сказали, пустые ключи должны храниться в тайне на сервере… так что ответ-нет по соображениям безопасности. Если вы передадите закрытые ключи браузеру, злоумышленник может прочитать эти ключи и начать рассылать спам всем вашим пользователям с уведомлениями…
3. Безопасность не является соображением @collimarco в моем случае использования. Я спрашиваю, возможно ли это, а не является ли это рекомендуемой лучшей практикой.
Ответ №1:
Нет, это невозможно, так как https://fcm.googleapis.com/fcm/...
не возвращает необходимые заголовки CORS. Я не тестировал другие push-сервисы, но они также вряд ли вернут заголовки CORS.