【问题标题】:How to setup Google Translate API for Node.js?如何为 Node.js 设置谷歌翻译 API?
【发布时间】:2019-09-30 16:41:55
【问题描述】:

我想在我的 Node.js 应用程序中使用 Google 的云翻译 API,但是我收到了 The request is missing a valid API key. 错误。

我已经关注了谷歌提供的Quickstart guide

我已经创建了 GCP 项目,将私钥下载为 JSON 文件,并在 Powershell (img) 中设置了环境变量。

之后我安装了这个库 yarn add @google-cloud/translate

我在 translate.js 文件中运行的代码来自快速入门指南,其中包含额外的 try-catch 块:

async function quickstart(
  projectId = process.env.PROJECT_ID // Project Id from JSON file
) {
  try {
    // Imports the Google Cloud client library
    const { Translate } = require('@google-cloud/translate');
    // Instantiates a client
    const translate = new Translate({ projectId });

    // The text to translate
    const text = 'Hello, world!';

    // The target language
    const target = 'ru';

    // Translates some text into Russian
    const [translation] = await translate.translate(text, target);
    console.log('Text:', text);
    console.log('Translation:', translation);
  } catch (error) {
    console.error(error);
  }
}

quickstart();

然后当我运行 node translate.js 时,我会得到一个错误:

{ Error: The request is missing a valid API key.
   ...

  code: 403,
  errors:
   [ { message: 'The request is missing a valid API key.',
       domain: 'global',
       reason: 'forbidden' } ],
  response: undefined,
  message: 'The request is missing a valid API key.' }

我使用的是 Windows 10,Node v10.13.0。

【问题讨论】:

    标签: node.js google-translate


    【解决方案1】:

    相信你会在启动节点服务之前错过这个环境变量定义

    将 [PATH] 替换为包含您的服务帐户密钥的 JSON 文件的文件路径,将 [FILE_NAME] 替换为文件名。

    使用 PowerShell:

    $env:GOOGLE_APPLICATION_CREDENTIALS="[PATH]"
    
    For example:
    
    $env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\[FILE_NAME].json"
    

    【讨论】:

    • 我在运行 node.js 之前已经这样做了。看这里:imgur.com/a/0ZdVVhB
    • $env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads[FILE_NAME].json";节点 yourappstartupfile.js
    • 上面的命令设置了环境变量并立即使用分号启动程序。这是一个与 powerbuild 相关的命令。
    • 是的,刚刚测试过。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-14
    • 2013-12-28
    • 1970-01-01
    • 2017-04-29
    • 2011-12-26
    • 2010-10-10
    相关资源
    最近更新 更多