You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让@google-cloud/translate API在localhost本地正常运行?

Node.js本地运行@google-cloud/translate的配置问题与解决方案

我需实现文本翻译功能,在Node.js服务器中按文档编写@google-cloud/translate代码,但因使用ES6导入,替换导入路径后可正常加载。测试时v3版本出现「无法加载默认凭据」错误,已安装Google Cloud CLI仍未解决;切换到v2版本后,又出现「请求缺少有效API密钥」错误——v2在公网服务器可正常运行,求本地运行的完整步骤与配置条件。


相关代码与导入语句

原始v3 CommonJS代码

const {TranslationServiceClient} = require('@google-cloud/translate');

const translationClient = new TranslationServiceClient();

async function translateText() {
  const request = {
    parent: `projects/${projectId}/locations/${location}`,
    contents: [text],
    mimeType: 'text/plain', // mime types: text/plain, text/html
    sourceLanguageCode: 'en',
    targetLanguageCode: 'sr-Latn',
  };

  const [response] = await translationClient.translateText(request);

  for (const translation of response.translations) {
    console.log(`Translation: ${translation.translatedText}`);
  }
}

translateText();

ES6导入替换语句

  • v3导入
import {TranslationServiceClient} from '@google-cloud/translate/build/src/v3/index.js'
  • v2导入
import {Translate} from '@google-cloud/translate/build/src/v2/index.js'

错误信息

v3版本错误

Google translate error: Error: Could not load the default credentials. 请查看Google Cloud认证文档获取更多信息。

v2版本错误

"message": "The request is missing a valid API key."

本地运行完整配置步骤与条件

通用前置条件

  • 已创建Google Cloud项目,并启用Cloud Translation API
  • 安装Node.js v14及以上版本(确保支持ES6模块)
  • 安装依赖包:npm install @google-cloud/translate

v3版本本地配置步骤

v3依赖服务账号凭据完成认证,步骤如下:

  1. 生成服务账号密钥
    • 登录Google Cloud控制台,进入「IAM与管理」→「服务账号」页面
    • 创建新服务账号(或使用现有账号),为其添加「Cloud Translation API用户」权限
    • 为该服务账号创建JSON格式的密钥文件,下载到本地(建议命名为service-account-key.json)
  2. 配置凭据
    • 方法一:环境变量(推荐,避免硬编码)
      • Windows(命令提示符):set GOOGLE_APPLICATION_CREDENTIALS=本地密钥文件的完整路径
      • Windows(PowerShell):$env:GOOGLE_APPLICATION_CREDENTIALS="本地密钥文件的完整路径"
      • macOS/Linux:export GOOGLE_APPLICATION_CREDENTIALS=本地密钥文件的完整路径
    • 方法二:代码中指定密钥路径
      修改客户端初始化代码:
      const translationClient = new TranslationServiceClient({
        keyFilename: '本地密钥文件的完整路径'
      });
      
  3. 补充代码变量
    确保代码中的projectId(你的Google Cloud项目ID)、location(如global或具体区域us-central1)、text(待翻译文本)已正确赋值

v2版本本地配置步骤

v2支持API密钥或服务账号认证,本地运行推荐使用API密钥:

  1. 生成API密钥
    • 登录Google Cloud控制台,进入「API与服务」→「凭据」页面
    • 创建「API密钥」,并限制该密钥仅能访问Cloud Translation API(降低密钥泄露风险)
  2. 配置API密钥
    • 方法一:环境变量(推荐)
      • Windows:set TRANSLATE_API_KEY=你的API密钥
      • macOS/Linux:export TRANSLATE_API_KEY=你的API密钥
      • 代码中读取密钥并初始化客户端:
        const translate = new Translate({key: process.env.TRANSLATE_API_KEY});
        
    • 方法二:代码中直接指定(不推荐,硬编码密钥存在安全隐患)
      const translate = new Translate({key: '你的API密钥'});
      
  3. 适配v2代码逻辑
    v2的调用方式与v3不同,示例代码如下:
    async function translateText() {
      const [translation] = await translate.translate('Hello', 'sr-Latn');
      console.log(translation);
    }
    

内容的提问来源于stack exchange,提问作者MikeyB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 11:52:46