#javascript #firebase #google-cloud-functions
#javascript #firebase #google-cloud-функции
Вопрос:
Я использую оболочку Firebase Functions для интерактивного тестирования вызываемой функции HTTPS. В документации (интерактивные функции тестирования) указано, что я могу передать Firebase-Instance-ID-token для аутентификации, но не указано, как его получить.
При желании вы можете передать Firebase-Instance-ID-token в качестве второго параметра. Это должна быть строка.
# invoke with Instance ID token myCallableFunction('test data', {instanceIdToken: 'sample token'})
В нем также говорится,
Эмуляция context.auth в настоящее время недоступна.
Означает ли это, что даже если я передам токен, моя функция не получит context: { auth: uid } и т. Д.? Если да, то каков был бы хороший способ издеваться над этим в целях тестирования?
К вашему сведению, я не использую Firebase Messaging.
Ответ №1:
Если вы не знаете точно, что вам там нужно, тогда вообще ничего не передавайте. Если вы не используете FCM, то строка будет бесполезна для вашей функции. На самом деле он используется только в вызове API для отправки сообщений или для сохранения для последующего использования с FCM.
Этот токен не имеет ничего общего с авторизацией пользователя. Токены FCM не идентифицируют аутентифицированного пользователя. Они идентифицируют устройство, на котором пользователь использует ваше приложение.
Я также укажу, что в документации указано:
Эмуляция context.auth в настоящее время недоступна.
Итак, вы ничего не можете сделать, чтобы заполнить context.auth в вашей функции с точки зрения этого локального инструмента тестирования.