Какова максимальная длина FCM getToken? [Дубликат]

Пакет deepmerge npm, по-видимому, является наиболее широко используемой библиотекой для решения этой проблемы: https://www.npmjs.com/package/deepmerge

15
задан jamesc 10 October 2016 в 13:26
поделиться

2 ответа

Я думаю, что эта часть FCM по-прежнему совпадает с GCM. Поэтому вы должны ссылаться на этот ответ на @TrevorJohns:

Документация не указывает какой-либо шаблон, поэтому допустимая строка разрешена. Формат может измениться в будущем; пожалуйста, не проверяйте этот ввод против любого шаблона , так как это может привести к нарушению вашего приложения.

Как и в поле «registration_id», верхняя граница по размеру максимальный размер для файла cookie, который составляет 4K (4096 байт).

Подчеркивание на Формат может измениться в будущем , я бы предложил остановиться безопасны и имеют дополнительную длину (указанную выше). Поскольку формат и длина регистрационного токена могут также варьироваться.

Для обычной длины и символов вы можете обратиться к этим двум ответам последнее является гораздо более определенным :

Я не видел официальной информации о формате регистрации GCM, но я проанализировал нашу базу данных таких идентификаторов и могу сделать следующие выводы:

  • в большинстве случаев длина регистра ID равна 162 символам, но может быть изменена до 119 символов, может быть, и других длин,
  • состоит только из этих символов: [0-9a-zA-Z\-\_]*
  • каждый regID содержит один или оба «разделителя»: - (минус) или _ (подчеркивание)
11
ответ дан Community 20 August 2018 в 09:48
поделиться
  • 1
    Мы также получаем : в наших токенах. В документации firebase.google.com/docs/cloud-messaging/server показан пример токена как bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1..., который определенно имеет :. – jamesc 14 October 2016 в 11:33
  • 2
    @jamesc Я также видел : в токенах. Я думаю, что это действительный символ разделителя. – AL. 14 October 2016 в 11:48
  • 3
    @jamesc Я обычно вижу : для токенов регистрации для приложения Chrome Client. Но я думаю, что это возможно даже для Android и iOS. В любом случае, я думаю, что мой ответ выше в значительной степени дает вам представление и охватывает ваши запросы. Если вы согласны, пожалуйста, примите его как правильный ответ, чтобы он был помечен как «Ответ». Ура! – AL. 15 October 2016 в 14:55
  • 4
    Не забыли об этом - я приму ответ, как только мой код выйдет в эфир: D – jamesc 27 October 2016 в 10:16
  • 5
    @jamesc - Не беспокойтесь. Удачи с вашим приложением. :) – AL. 27 October 2016 в 11:08

Теперь я использую Firebase Cloud Messaging вместо GCM.

Длина регистрационной записи у меня - 152.

У меня также есть «:» в самом начале каждый раз, как то, что jamesc (например, bk3RNwTe3H0: CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1).

Я делаю маркер как varchar (255), который работает для меня.

Однако длина registration_id не имеет отношения к размер 4k. Вы можете отправлять любой размер данных через сеть. Обычно файлы cookie ограничены 4096 байтами, которые состоят из имени, значения, даты истечения срока действия и т. Д.

7
ответ дан Fred 20 August 2018 в 09:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: