首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >谷歌云功能:警告,FIREBASE_CONFIG和GCLOUD_PROJECT环境变量丢失。初始化防火墙-管理员将失败

谷歌云功能:警告,FIREBASE_CONFIG和GCLOUD_PROJECT环境变量丢失。初始化防火墙-管理员将失败
EN

Stack Overflow用户
提问于 2021-09-28 05:56:28
回答 1查看 1.5K关注 0票数 0

我有一个google云功能,当文档被添加到云消防局时,它会给我发送一封电子邮件。

  • 运行时环境是: Nodejs 14

这个函数确实有效,但是在日志中我得到了一个警告:“警告,FIREBASE_CONFIG和GCLOUD_PROJECT环境变量丢失了。初始化firebase-admin会失败”--我真的不明白这个警告。

你知道有什么解决办法吗?我不想看到这个警告。我必须做什么(解决方案)。

我看到一些人使用NodeJS8,它起了作用,但我不想使用NodeJS8。

我对云很陌生。我说的是几个星期。请不要让你回答复杂。

以下是代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"use strict";

const functions = require("firebase-functions");
const admin = require("firebase-admin");
const nodemailer = require("nodemailer");

const FireStoreParser = require ("firestore-parser");

const { google } = require("googleapis");

admin.initializeApp();

exports.sendMail = functions.handler.firestore.document.onCreate(async(change,context) => {
  
  const OAuth2 = google.auth.OAuth2;
  const clientID = "you-dont-need-this";
  const clientSecret = "you-dont-need-this";
  const refreshToken = "you-dont-need-this"
  
  const oauth2Client = new OAuth2(
    clientID, //client Id
    clientSecret, // Client Secret
    "https://developers.google.com/oauthplayground" // Redirect URL
  );

  oauth2Client.setCredentials({
    refresh_token: refreshToken
  });
  
  const accessToken = await oauth2Client.getAccessToken()
    
  const smtpTransport = nodemailer.createTransport({
    service: "gmail",
    auth: {
      type: "OAuth2",
      user: "you-dont-need-this",
      clientId: clientID,
      clientSecret: clientSecret,
      refreshToken: refreshToken,
      accessToken: accessToken
    }
  });
  
  const _fieldsProtoInJSON = FireStoreParser(change._fieldsProto);
  const textToMail = JSON.stringify(_fieldsProtoInJSON);
  
  var attachment = [
    {   // binary buffer as an attachment
        filename: 'dataContainer.json',
        content: textToMail
    }
  ];
  
  const mailOptions = {
    from: `<you-dont-need-this>`,
    to: 'you-dont-need-this,
    subject: `New message container ${_fieldsProtoInJSON.ContainerNumber} from ${_fieldsProtoInJSON.Tag}`,
    text: `See attachment for data.`,
    attachments: attachment
  };
  

  smtpTransport.sendMail(mailOptions, (error, info) => {
    if (error) {
      console.log(error.message);
      smtpTransport.close();
    }
    return "mail sent";
  });
});

这是package.json

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
  "name": "functions",
  "description": "Cloud Functions for Firebase",
  "scripts": {
    "lint": "eslint .",
    "serve": "firebase serve --only functions",
    "shell": "firebase functions:shell",
    "start": "npm run shell",
    "deploy": "firebase deploy --only functions",
    "logs": "firebase functions:log"
  },
  "engines": {
    "node": "14"
  },
  "dependencies": {
    "firebase-admin": "^8.12.1",
    "firebase-functions": "^3.6.2",
    "firestore-parser": "0.9.0",
    "@google-cloud/storage": "^5.1.1",
    "googleapis": "^51.0.0",
    "nodemailer": "^6.4.8"
  },
  "devDependencies": {
    "eslint": "^5.12.0",
    "eslint-plugin-promise": "^4.0.1"
  },
  "private": true
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-05 23:32:14

我通过使用firebase部署函数来解决这个问题。这样,变量就会自动填充。

查看此链接以获得一个示例:火基CLI参考

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69363102

复制
相关文章
它来了!Flutter3.0发布全解析
我们很高兴地宣布,作为谷歌I/O主题演讲的一部分,我们今天推出了Flutter 3。Flutter 3完成了我们从以移动为中心到多平台框架的路线图,提供了对macOS和Linux桌面应用的支持,以及对Firebase集成的改进,新的生产力和性能特性,并支持Apple Silicon。
用户1907613
2022/05/17
8.1K0
它来了!Flutter3.0发布全解析
iOS Crash不崩溃
用户在使用App的过程中,经常遇到闪退的情况,体验不太好,本文尝试探索引发闪退的原因,以及在遇到crash的情况下,尽可能的保持程序运行,并及时上报错误。
用户2814378
2022/11/07
2.2K0
iOS Crash不崩溃
firebase怎么用_firebase是什么
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/168361.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/20
4.2K0
firebase怎么用_firebase是什么
Flutter 3.0正式发布:稳定支持6大平台,字节跳动是主要用户
5 月 12 日,Flutter 3.0 在 Google I/O 开发者大会正式亮相,随着 3.0 版本的发布,Flutter 开发框架终于可以支持六大平台,实现了其跨平台稳定运行的愿景。
深度学习与Python
2022/06/11
7.5K0
Flutter 3.0正式发布:稳定支持6大平台,字节跳动是主要用户
iOS开发——解析崩溃日志
在实际的开发过程中,作为开发者的我们常常会碰到一种场景,那就是真机调试时崩溃了,而有时又不能在Xcode中打印出崩溃信息,那么这时候我们就必须要获取到崩溃原因,从而解决问题。
Originalee
2018/08/30
1.4K0
iOS开发——解析崩溃日志
iOS如何获取崩溃日志
在日常测试iOS中会经常遇到App崩溃的情况,然后给研发提bug。如果就提bug就有一两句话描述,研发很难精准排查问题,所以作为测试人员需要提供崩溃日志或者崩溃堆栈辅助研发排查问题。
测试加
2022/12/05
3.3K0
iOS如何获取崩溃日志
iOS WKWebview的iOS 11以下崩溃问题
以上崩溃问题,经发现是没有removeObserver或者delegate没有设置为nil产生
freesan44
2020/05/04
1.1K0
iOS 中各种奇怪的崩溃
注意,本文所有崩溃的原因都是同一个 EXC_BAD_ACCESS (code=1, address=0x11f645b98) image-20210423232626879 第一个堆栈:字典扩容 im
酷酷的哀殿
2021/04/26
1.7K1
iOS  中各种奇怪的崩溃
iOS崩溃日志ips文件解析
  测试组的同事在进行稳定性测试时,通常会遇到一些崩溃,然后他们会将这些崩溃日志(一般是ips格式的文件)反馈给开发进行分析,但是这些ips文件中的内容通常是如下图这样的,都是一些十六进制的堆栈地址,如果仅仅根据这些堆栈地址,我们基本无法做任何事情,连最基本的崩溃定位都做不到。那么,在iOS开发中,还有一些其他的方法可以帮助我们将这些堆栈信息转化为可视化的日志文件,在转化后的可视化日志文件中,我们可以清晰定位到我们的应用崩溃的位置,如下图2所示。
mukekeheart
2018/08/20
7.5K0
iOS崩溃日志ips文件解析
如何将你的Hexo博客部署到Google Firebase上
博主最近在 白嫖万恶的资本 将博客部署到新的CDN上,所以在寻找免费的静态Web应用部署工具,发现了Google Firebase。
pai233
2022/04/26
1.4K0
如何将你的Hexo博客部署到Google Firebase上
iOS 友盟崩溃日志定位代码
如果我的介绍没帮到你,可以看看这篇文章: http://www.jianshu.com/p/77d8b5e0d8c3
且行且珍惜_iOS
2018/08/13
2.2K0
iOS 友盟崩溃日志定位代码
2017——国外SDK发展趋势
本文列出了 2017 年国外增长最快的移动应用 SDK,旨在帮助开发者了解技术的发展趋势。 1. 更多开发者选择应用开发平台 开发者通常会面临这样的选择:是选择功能单一的工具还是选择提供“一条龙”服务
BestSDK
2018/03/02
6.2K0
2017——国外SDK发展趋势
做什么样的软件系列之Firebase
为什么要写这一篇? 做为一个iOS开发者我没有精力自己实现一套,登陆系统后台,广告系统后台,自己尝试写过身份认证系统,但是忘记密码之类的写的又丑又简陋。同时写后端和app又不能兼顾。
于欣轩
2018/05/25
4.4K0
使用ProcDump工具解决Windows应用程序崩溃
ProcDump是一个可以用于诊断多种问题点的命令行工具。和Dr.Watson、ADPlus以及DebugDiag一样,ProcDump可以在不期望的情况或者异常发生时,用于俘获一个进程的内存转储。而且也同ADPlus以及DebugDiag一样,它可以对一个挂起的应用程序强制进行进程转储。但和之前的任何工具不同的是,ProcDump可以在CPU的活动峰值达到一个指定的级别时,对一个进程进行转储。这对于那些间歇性的性能问题是特别有用的,对于这种问题,其发生是很难预测的。 ProcDump包括一个单独的可执行
张善友
2018/01/29
2.9K0
iOS - 记录bugly一次崩溃
NSMutableRLEArray objectAtIndex:effectiveRange:: Out of bounds
Wilbur-L
2021/11/09
1.8K0
ios开发之UICollectionView 崩溃的记录
今天写代码,遇见了这样的错误,检查代码都没有错误,运行还是报如下的错误: *** Assertion failure in -[UICollectionView _dequeueReusableViewOfKind:withIdentifier:forIndexPath:viewCategory:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit_Sim/UIKit-3512.60.7/UICollectionView.m:3983 这是我写的
roc
2018/03/30
8640
ios开发之UICollectionView 崩溃的记录
iOS 真机导出崩溃堆栈日志
那就是使用第三方bugly来记录崩溃日志,在bugly上配置好符号表后方法调用即可清晰可见。
小明同学接音视频
2020/12/22
2.2K0
iOS 真机导出崩溃堆栈日志
ios开发之UICollectionView 崩溃的记录
今天写代码,遇见了这样的错误,检查代码都没有错误,运行还是报如下的错误: *** Assertion failure in -[UICollectionView _dequeueReusableViewOfKind:withIdentifier:forIndexPath:viewCategory:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit_Sim/UIKit-3512.60.7/UICollectionView.m:3983 这是我写的
roc
2018/03/30
8540
ios开发之UICollectionView 崩溃的记录
【周一通勤电台 · 特辑】六千字漫谈2022后端框架流行趋势
这篇文章基于我对后端框架的了解以及研究,提供了2021-2022年度以及未来一年内可能流行的后台框架。
翊君
2022/03/15
4.4K0
【周一通勤电台 · 特辑】六千字漫谈2022后端框架流行趋势
点击加载更多

相似问题

Firebase崩溃报告导致iOS 10上的崩溃

10

Firebase initWithUrl在iOS 5.1上崩溃

23

Firebase配置在快速崩溃

12

Firebase应用程序在快速启动时崩溃

25

安装firebase后,flutter ios应用程序崩溃

235
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文