и проблема решена.

ользую Lambda для Firebase сообщения. Я рефэтот, Но лямбда-функция все еще не работает, потому что она не может подключиться к серверу Google.

Handler.js

/ [START imports]
const firebase = require('firebase-admin');
const serviceAccount = require("../serviceAccount.json");

module.exports.message = (event, context, callback) => {
  context.callbackWaitsForEmptyEventLoop = false;  
  const registrationToken = "xxxxxxx";

  const payload = {
    data: {
      score: "850",
      time: "2:45"
    }
  };

  // [START initialize]
  if(firebase.apps.length == 0) {   // <---Important!!! In lambda, it will cause double initialization.
    firebase.initializeApp({
      credential: firebase.credential.cert(serviceAccount),
      databaseURL: 'https://messaging-xxxxx.f,irebaseio.com'
    });
  }

  // Send a message to the device corresponding to the provided
  // registration token.
  firebase.messaging().sendToDevice(registrationToken, payload)
    .then(function(response) {
      // See the MessagingDevicesResponse reference documentation for
      // the contents of response.
      console.log("Successfully sent message:", response);
      callback(null, {
        statusCode: 200,
        body: JSON.stringify("Successful!"),
      });
    })
    .catch(function(error) {
      console.log("Error sending message:", error);
      callback(null, {
        statusCode: 500,
        body: JSON.stringify({
          "status": "error",
          "message": error
        })
      })
    });
};

CloudWatch

[Ошибка: реализация учетных данных, предоставленная для initializeApp () через свойство «учетные данные», не смогла получить действительный токен доступа Google OAuth2 со следующей ошибкой: «connect ETIMEDOUT 172.217.26.45:443».]

Но я использую тот же serviceAccount.json для запуска на моем ec2 и поиска работы. Кто-нибудь сталкивался с этим?

Ответы на вопрос(1)

Ваш ответ на вопрос