Firebase 函数 V2 文档触发器中的 Google 秘密

Jay*_*y B 7 javascript firebase google-cloud-functions google-cloud-firestore

我有一个关于 Firebase Functions V2 的问题,关于如何将 Google Secrets Manager 包含到文档触发器函数中。

我知道如何使用 OnRequest 来做到这一点,下面的工作正常。

exports.myWebhook = onRequest({secrets: [MY_WEBHOOK_SECRET, MY_TEST_SECRET_KEY]}, async (req, res) => {
    const safe = STRIPE_TEST_SECRET_KEY.value();
}
Run Code Online (Sandbox Code Playgroud)

但是我似乎无法让它与 onDocumentCreated 一起使用......

exports.myUpdate = onDocumentCreated("/orders/{documentId}", async (event ) => {
 const myAPIKey = MY_OTHER_API.value()
}
Run Code Online (Sandbox Code Playgroud)

每当我在此函数中的任何位置放置 {secrets: [MY_OTHER_API]} 时,都会产生错误。如果我排除它,那么 API 密钥值只是空白。

任何帮助,将不胜感激。谢谢。

尝试将 {secrets: [MY_OTHER_API_KEY]} 放入函数中以允许其访问 Google Secret 值。

sam*_*man 14

根据API 参考,第一个参数是文档路径或firestore.DocumentOptions对象(扩展定义的GlobalOptions位置):secrets

exports.myUpdate = onDocumentCreated(
  {
    document: "/orders/{documentId}",
    secrets: [MY_OTHER_API]
  },
  async (event) => {
    const myAPIKey = MY_OTHER_API.value()
    // other steps
  }
)
Run Code Online (Sandbox Code Playgroud)