簡體   English   中英

Firebase 雲功能 - 無法從源加載 function 定義:Restful 端點 - 無法添加定義的端點

[英]Firebase Cloud functions - Failed to load function definition from source: Restful Endpoints - Failed to add the endpoint defined

我在節點 16.14 中使用 firebase 雲函數和 typescript。

我的 index.ts 看起來像這樣:

    import { FunctionParser } from "firebase-backend";
    exports = new FunctionParser({rootPath: __dirname, exports, 
    verbose:true}).exports;

這是 addEvent.endpoint.ts:

import { Request, Response } from "express";
import { Endpoint, RequestType } from "firebase-backend";
// import * as functions from "firebase-functions";

const fs = require('firebase-admin');
const serviceAccount = require('./key.json');
fs.initializeApp({
 credential: fs.credential.cert(serviceAccount)
});

const db = fs.firestore();

export default new Endpoint(
    "addEvent",
    RequestType.POST,
    (request: Request, response: Response) => {
        
        const message = request.body["message"];

        db.collection("events").doc("adkakjagjh").set("message", message);
        
        return response.status(201).send({
            message: message
        });
    }
)

我有以下文件結構如下。

在此處輸入圖像描述

我的雲功能最近才工作,但我不知道的一些更改使它們出錯,僅針對此 1 個端點“addEvent.endpoint.ts”出現以下錯誤:錯誤:無法從源加載 function 定義:無法生成來自 function 來源的清單:錯誤:Restful 端點 - 無法將 C 中定義的端點添加:/Development/EventFeeder/Backend/Firebase/functions/lib/users/restful/addEvent.endpoint.js 到用戶 Api。

我該如何解決這個問題? 我不確定我需要嘗試什么,因為錯誤消息並沒有具體說明問題的根本原因。 我沒有找到關於這個特定問題的任何帖子。

我嘗試使用“npm run build && firebase emulators:start --only functions”和“firebase emulators:start”運行函數

當我刪除 addEvent.endpoint.ts 文件時,問題消失了

我遇到了同樣的問題,我發現你不應該在每個端點初始化應用程序 (initializeApp()),只需將它寫入 index.ts 一次,一切都會按預期工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM