gpt4 book ai didi

firebase - 试图弄清楚为什么 Sendgrid 的电子邮件 API 与 Firebase 函数的集成返回 "API key does not start with SG."

转载 作者:行者123 更新时间:2023-12-05 07:04:14 26 4
gpt4 key购买 nike

我正在尝试将 Sendgrid 的电子邮件 API 与我的 Firebase 网络应用程序集成。这是我所做的:

1 - 安装了 Sendgrid 的邮件包

npm install @sendgrid/mail

2 - 在我的 Sendgrid 帐户上创建了一个 API key

3 - 使用 Firebase 的环境配置将 API key 分配给环境变量:

firebase functions:config:set sendgrid.key=SG.xxxxxxxxxxxxxxxxxxxxxx.xxxxxxxxxxxxxxxxxxxx_xxxxxx_xxxxxxxxxxxxxxx 

4 - 检查是否正确分配了环境变量:

firebase functions:config:get

结果:

log of firebase environment variable

5 - 导入 sendgrid 邮件并设置 API key :

import * as sgMail from '@sendgrid/mail';

const API_KEY = functions.config().sendgrid.key

const TEMPLATE_ID = functions.config().sendgrid.template
sgMail.setApiKey(API_KEY);

6 - 创建了一个新的用户触发器来发送测试邮件

export const welcomeEmail = functions.auth.user().onCreate(user => {

const msg = {
to: user.email,
from: 'contato@mycompanydomain.com.br',
templateId: TEMPLATE_ID,
dynamic_template_data: {
subject: 'test subject!',
name: user.displayName,
},
};

return sgMail.send(msg);

})

7 - 已部署的 Firebase 函数:

firebase deploy --only functions

完成此操作后,我希望至少可以正确设置 API key ,但我不断从 firebase 函数日志中收到以下错误:

enter image description here

我不知道哪里出了问题。我已经尝试了一些事情:

1- 创建一个新的 API key 并重新开始整个过程​​。

2- 将 API 直接粘贴到 sgMail.setApiKey() 方法中。喜欢:

sgMail.setApiKey("SG.xxxxxxxxxxxxxxxxxxxxxx.xxxxxxxxxxxxxxxxxxxx_xxxxxx_xxxxxxxxxxxxxxx")

所有这些都给出了相同的“API key does not start with SG”错误。

你们能帮我找出问题所在吗?

版本

"@sendgrid/mail": "^7.2.1",
"firebase-admin": "^8.10.0",
"firebase-functions": "^3.8.0"

非常感谢

最佳答案

对于遇到同样问题的人,我通过使用新的 firebase 包并从 firebase-functions 导入配置来解决它。所以我的代码看起来像这样:

import functions, { config } from "firebase-functions";
import sendgrid from "@sendgrid/mail";
const MY_SENDGRID_API_KEY = config().sendgrid.key;
sendgrid.setApiKey(MY_SENDGRID_API_KEY);

关于firebase - 试图弄清楚为什么 Sendgrid 的电子邮件 API 与 Firebase 函数的集成返回 "API key does not start with SG.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62986699/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com