Могу ли я использовать облачные сообщения Firebase без разрешения на уведомление?(Javascript) - PullRequest
0 голосов
/ 21 ноября 2018

Обновление: описание отчета об ошибках Google

(как предложено адвокатом Google dev в комментариях к ответу 1, подано сообщение об ошибке; здесь обновляется содержание, поскольку оно более лаконично и точно описываетпроблема)

Мне не нужно или хочу показывать какие-либо уведомления для моего пользователя.И многие пользователи не хотят давать разрешение на уведомления, потому что они предполагают, что они начнут видеть уведомления.

Но я хочу отправить данные на мою веб-страницу с сервера.Веб-страница активна и находится на переднем плане.Это классический вариант использования, для которого были разработаны веб-сокеты.

Я понимаю, что мог бы написать свой собственный сервер веб-сокетов и каким-то образом попытаться его масштабировать или перейти к какой-либо другой сторонней организации для аутсорсинга масштабируемой сети.решение для push-розеток.

Но разве это не очень распространенный "вариант использования" обмена сообщениями, на который ориентирован Firebase Messaging?Поэтому Google не должен поддерживать этот вариант использования?Я не вижу каких-либо фундаментальных технических шоу-стопоров, но, поскольку Google настолько умен, пожалуйста, сообщите мне, если я что-то упустил, почему это не может или не должно быть сделано.

Оригинальный вопрос StackOverflowТекст:

Мне не нужны фоновые уведомления или работники сферы обслуживания.Все, что я хочу, - это отправлять данные на веб-страницу, когда она загружена в данный момент и находится на переднем плане.

Веб-сокеты не нуждаются в каких-либо разрешениях, но им нужен сервер веб-сокетов и обслуживание.Масштабировать его сложно или дорого.

Firebase решает проблему принципиально, но я не понимаю, почему он должен требовать, чтобы пользователь давал разрешения на уведомления, даже если я хочу передавать данные только при загрузке страницы;не в фоновом режиме.

Ответы [ 2 ]

0 голосов
/ 21 ноября 2018

Проблема заключается в том, что Firebase Messaging использует только 1 метод для доставки уведомлений.Это спецификация Push API, и эта спецификация (ошибочно и к сожалению) не позволяет работнику службы получать сообщения без разрешения пользователя несвязанное разрешение показывать уведомления.

Исправление будет заключаться в том, чтобы команда Firebase Messaging предоставила другой способ доставки сообщений на активные веб-страницы - длинный опрос или веб-сокеты.

Но это было бы для них дополнительной работой и можетне хватит людей, которые просят об этом.

0 голосов
/ 21 ноября 2018

Это для защиты предпочтений пользователя о том, что разрешено делать вашему приложению.Push-сообщения работают в браузерах с помощью сервисного работника.Даже если вы говорите, что вам не нужен сервисный работник, вы фактически используете его, когда используете Firebase Cloud Messaging в своем приложении.

Учитывая это, приглашение необходимо, потому что браузер не знает, чтоВы намерены делать с этим push-сообщением.Если пользователь не доверяет вашему приложению, он должен иметь право ограничить то, что оно может на самом деле делать, особенно если оно не использует ваше приложение.Мобильные операционные системы (iOS, Android) работают одинаково.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...