首页 > 解决方案 > Aws Lambda Firestore 请求超时

问题描述

我正在尝试将 Firestore 与 aws lambda 一起使用。(通过 aws 层导入的 admin-sdk)。

此代码有效并返回:“done”:“[DEFAULT]”

const admin = require('firebase-admin');
const serviceAccount = require('serviceAccount.json');


 exports.lambdaHandler = async (event) => {
     
    try {
    const defaultApp =  admin.initializeApp({
     credential: admin.credential.cert(serviceAccount),
    });


      return {
        statusCode: 200,
        body: JSON.stringify({ done: defaultApp.name}),
      };
    } catch (err) {
      console.error(err);
      return {
        statusCode: 400,
        body: JSON.stringify({ error: `error ${err}`}),
      };
    }
  };

但随后我添加了一个简单的 Firestore 请求。

 let db = admin.firestore();
    var docRef = db.collection('test').doc('test');
    await docRef.set({
     first: 'test',
    });

并且 Lambda 给出了“超时”错误。“任务在 5.01 秒后超时”。

我假设这个功能可以在 5 秒内运行。此外,Firebase admin sdk 已正确安装,因为在初始化 admin sdk 时我没有收到错误消息。

该文档没有出现在 Firestore 中,所以我最接近的猜测是我添加的代码有问题。

我究竟做错了什么?

谢谢。

标签: firebasegoogle-cloud-firestoreaws-lambda

解决方案


推荐阅读