在 Node 运行时 10 上部署 Firebase Cloud Functions 时出错,但在 Node 运行时 8 上工作

Nei*_*own 7 node.js firebase google-cloud-functions google-cloud-firestore geofirestore

我正在尝试在我的云函数中实现 geofirestore。

这些函数在 Node 运行时 8 中部署正确,但在运行时 10 中部署时出现错误。

我的 index.js 标头如下:

const functions = require("firebase-functions");
const admin = require("firebase-admin");
const { GeoCollectionReference, GeoFirestore, GeoQuery, GeoQuerySnapshot } = require('geofirestore');
admin.initializeApp();

const db = admin.firestore();
const geofirestore = new GeoFirestore(db);
Run Code Online (Sandbox Code Playgroud)

我在 Node 运行时 10 上收到的错误消息是:

i  deploying functions
Running command: npm --prefix "$RESOURCE_DIR" run lint

> functions@ lint C:\Users\naabr\Projects\flutter\mg_sos\firebase\functions
> eslint .

+  functions: Finished running predeploy script.
i  functions: ensuring required API cloudfunctions.googleapis.com is enabled...
i  functions: ensuring required API cloudbuild.googleapis.com is enabled...
!  functions: missing required API cloudbuild.googleapis.com. Enabling now...
+  functions: required API cloudfunctions.googleapis.com is enabled

!  functions: Cloud Functions will soon require the pay-as-you-go (Blaze) billing plan to deploy. To avoid service disruption, upgrade before 2020-06-23. For more information, see: https://firebase.google.com/support/faq#functions-runtime

i  functions: preparing functions directory for uploading...
i  functions: packaged functions (42.88 KB) for uploading
+  functions: functions folder uploaded successfully
i  functions: updating Node.js 10 function newUserCreated(us-central1)...
i  functions: updating Node.js 10 function emergencyNotification(us-central1)...
i  functions: updating Node.js 10 function emergencyUpdate(us-central1)...
!  functions[newUserCreated(us-central1)]: Deployment error.
Function failed on loading user code. Error message: Please examine your function logs to see the error cause: https://cloud.google.com/functions/docs/monitoring/logging#viewing_logs
Run Code Online (Sandbox Code Playgroud)

Fai*_*han 8

转到函数文件夹,然后打开package.json文件。现在更改文件,如下所示

"engines": {
"node": "10"
}
Run Code Online (Sandbox Code Playgroud)

"engines": {
"node": "8"
}
Run Code Online (Sandbox Code Playgroud)

然后,再次部署功能。

  • 这个伎俩不再起作用了。错误:您的项目 xcdy 必须位于 Blaze(按需付费)计划中才能完成此命令。在升级完成之前,无法启用所需的 API cloudbuild.googleapis.com。[要升级,请访问以下网址](https://console.firebase.google.com/project/aquaestore-f139a/usage/details) (2认同)