Ошибки перед развертыванием функций — бесконечные проблемы с именами функций

У меня возникли проблемы с развертыванием моей функции Firebase, так как я не могу назвать свою функцию ЛЮБЫМ стандартом. Я хотел назвать свою функцию «mgHandleStripePaymentSuccess».

Вот мой код (это вся функция)

// The Firebase Admin SDK to access Firestore.
import * as admin from "firebase-admin";
admin.initializeApp();

// Import the onCustomEventPublished function from Eventarc
import {onCustomEventPublished} from "firebase-functions/v2/eventarc";

export const mgHandleStripePaymentSuccess = onCustomEventPublished(
  "com.stripe.v1.checkout.session.completed",
  (event: any) => {
    console.info("Stripe payment success event data:", event.data);
    // Handle extension event here.
    return null;
  });

Вот мои ошибки:

Error: mgHandleStripePaymentSuccess v2 function name(s) can only contain lower case letters, numbers, hyphens, and not exceed 62 characters in length

Я переименовал свою функцию «mg-handle-stripe-payment-success», чтобы использовать только строчные буквы и дефисы, как было сказано, что я могу. Опять очередная ошибка

12:15  error  Parsing error: ',' expected

Строка 12, символ 15 — это расположение первого дефиса в имени функции. В этот момент я подумал, может быть, он перепутал дефисы с символами подчеркивания? Я проверил это, изменив имя моей функции на «mg_handle_stripe_payment_success» и получил худшую ошибку из всех:

12:14  error    Identifier 'mg_handle_stripe_payment_success' is not in camel case  camelcase

Первая ошибка гласила, что я не могу использовать camelCase. Итак, я должен назвать свою функцию самым ужасным способом? Такой как:

"mghandlestripepaymentsuccess"?

Учитывая, что расширение Firebase Stripe сделало все функции строчными с дефисами, я думаю, что что-то не так (с моей стороны или в линтере)

Вопреки своей воле я изменил имя функции на «handlesuccess», чтобы продолжить тестирование. но я просто хотел сказать, что это совершенно ужасно и абсолютно ненавижу это. LOL, извините, но, пожалуйста, помогите мне.

FoxDonut 10.04.2023 05:57

Это ограничение изменилось. Смотрите обновление к моему ответу ниже.

anothermh 19.04.2023 08:22
Интеграция Angular - Firebase Analytics
Интеграция Angular - Firebase Analytics
Узнайте, как настроить Firebase Analytics и отслеживать поведение пользователей в вашем приложении Angular.
1
2
51
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Облачные функции Gen 2 имели ограничения на имена функций:

Имена функций ограничены строчными буквами и цифрами.

Это ограничение было снято с 4 апреля 2023 года:

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

Это более подробно описано в документации по развертыванию

Первый аргумент, YOUR_FUNCTION_NAME, — это имя развернутой функции. Имя функции должно начинаться с буквы, за которой следует до 62 букв, цифр, дефисов или знаков подчеркивания, и должно заканчиваться буквой или цифрой.

Я очень ценю обновление! С соглашением о строчных буквах было совсем не весело работать.

FoxDonut 20.04.2023 07:31

Другие вопросы по теме

Сбой развертывания функции Firebase из-за ошибки «отсутствующие» зависимости
Облачная функция С# (системные пакеты, включенные в облачные функции, не загружаются)
Как вызвать облачную функцию из вашего флаттер-приложения без ожидания и с параметрами
Firebase: попытка вернуть временную метку сервера приводит к ошибке пространства имен
Нужно ли мне проверять apiKey или проверки подлинности пользователя достаточно для вызываемой функции HTTPS?
Как посмотреть вызовы облачных функций Google за день или месяц?
Как просто получить информацию о том, почему функции тратят процессорное время и вызывают затраты?
Почему мы внезапно получаем «Выполнение функции заняло 60000 мс, завершено со статусом:« ошибка »» в вызываемых функциях Firebase / облачных функциях Google?
Я не могу развернуть облачные функции firebase: не удалось загрузить определение функции из источника, основной «экспорт» не определен в D:\
Выполнение запроса на выборку в транзакции Firestore: получение «Невозможно изменить зафиксированный WriteBatch»