SendGrid API密钥不起作用。 “提供的授权许可无效,过期或被撤销”
发送网格似乎阻止我的节点js服务器发送电子邮件。
我在发送电子邮件的回复中收到此错误消息:
“提供的授权许可无效,过期或被撤销”
我也有一个API密钥设置,并遵循文档。
您需要使用API KEY GENERATED
不要使用API密钥ID
在创buildSendgrid时,只会显示一次生成的密钥。
如果您在创build密钥时没有将其logging在某个位置,则需要创build一个新密钥,然后您可能需要删除旧密钥,因为如果您不知道密钥是什么,那么将无用。
仅供参考:以上屏幕截图中的API密钥已被删除。 我马上把它删除了,所以请不要担心我泄漏那个密钥。
在Sendgrid v3中,我在Node JS中使用envvariables时遇到了类似的问题。 如果我使用envvariables,我得到上述问题。 但是,如果我把string放到require过程中,它就可以工作。
不起作用:
SENDGRID_API_KEY=SG.XXXXXXXXXXXXXXXXXXX var sg = require('sendgrid')(process.env.SENDGRID_API_KEY);
作品
var sg = require('sendgrid')('SG.XXXXXXXXXXXXXXXXXXX');
用生成的API密钥replaceSG.XXXXXXXXXXXXXXXXXXX(在密钥生成期间您只能看到一次)。
编辑
注意:确保您不要将其保存到公共存储库。 如果任何人都可以使用您的API密钥,并且您的帐户也将暂时由Sendgrid团队暂停,直到您将其从存储库中删除。
这是一个迟到的答案和JAVA面向..但我只是复制文件,没有注意到..
SendGrid sg = new SendGrid(System.getenv("SENDGRID_API_KEY"));
我只是把我的钥匙放在那里, 没有看到getEnv 。 当然是愚蠢的..但是当试图快速地工作的时候…