是否可以在 Cloud Function 中为 Google Cloud Platform API 生成访问令牌?

Is it possible to generate an access token for a Google Cloud Platform API in a Cloud Function?

我目前有一个 Android 应用程序,它使用 Google Speech-to-Text 库。在开发过程中,我在 /res/raw/ 中有一个服务帐户 JSON 文件,我将其用作 API.

的凭据

我已将 Firebase Auth UI 添加到应用程序,现在我想通过 Firebase 向 Speech-to-Text API 提供凭据。是否可以使用 Cloud Functions(基于 Firebase 服务帐户生成令牌),如果可以,我如何获取它?

我找不到任何与在 Cloud Function 中生成访问令牌相关的文档。

Node 是我不太熟悉的语言。这是一个基于 Cloud Function identity

生成访问令牌的最小示例
const express = require('express');
const app = express();

const {GoogleAuth} = require('google-auth-library');
const auth = new GoogleAuth()
app.get('/', async (req, res) => {
    res.send(await auth.getAccessToken());
});

const port = process.env.PORT || 8080;
app.listen(port, () => {});

您必须在依赖项中添加google-auth-library

没有身份验证(您必须确保请求者已获得授权,我的意思是您的用户登录了您的 Android 应用程序,我假设使用的是 firebase 身份验证)并且访问令牌以纯文本形式返回(无 json 格式)。

我认为你可以适应这个。