【问题标题】:Google Translate API Authentication谷歌翻译 API 身份验证
【发布时间】:2020-09-26 23:12:35
【问题描述】:

我刚刚安装了谷歌翻译 api,但是当我尝试在视觉工作室中使用它时,它给了我这个错误; `

System.InvalidOperationException H结果=0x80131509 Message=应用程序默认凭据不可用。

如果在 Google Compute Engine 中运行,它们就可用。否则,环境变量GOOGLE_APPLICATION_CREDENTIALS 必须定义为指向定义凭据的文件。请参阅https://developers.google.com/accounts/docs/application-default-credentials 了解更多信息。 我环顾四周,我似乎无法理解它。谁能告诉我怎么解决,谢谢。

【问题讨论】:

  • 请编辑您的问题并包含您的代码。我们需要查看您的应用程序是如何加载 GOOGLE_APPLICATION_CREDENTIALS 的,以及它在哪里使用它已加载的值
  • 请更新您的问题并提供更多详细信息 - 否则很难猜出问题所在。
  • 抱歉,我目前无法访问代码,但我会在今晚稍后上传
  • 导入 Google.Cloud.Translation.V2 Public Class Form1 Private Sub TranslateText(InputText) Dim Client = TranslationClient.Create() Dim InText = InputText Dim response = Client.TranslateText(InText, LanguageCodes.Japanese, LanguageCodes.English) MessageBox.Show(response.TranslatedText) End Sub

标签: vb.net google-api google-compute-engine google-translation-api


【解决方案1】:

我没有使用此库或 API 的经验,但我查看了您链接到的文档。看起来该库正在寻找某种包含凭据的 JSON 文本文件。

我假设你有这个,因为我知道的不够多,无法告诉你如何获取/创建它。我还假设您没有在“Compute Engine、GKE、App Engine 柔性环境或 Cloud Functions 上”运行。

在这个场景中,库将寻找一个名为 GOOGLE_APPLICATION_CREDENTIALS(如您所知)的环境变量,它假定它将包含 JSON 文件的路径。因此,您所要做的就是在调用该库中的任何方法之前设置该环境变量。

您可以为此使用Environment.SetEnvironmentVariable。只需在您的应用程序启动时调用它:

Environment.SetEnvironmentVariable("GOOGLE_APPLICATION_CREDENTIALS", PathToJSONFile)

【讨论】:

    猜你喜欢
    • 2021-02-05
    • 1970-01-01
    • 2022-11-08
    • 2012-07-23
    • 2010-10-16
    • 1970-01-01
    • 1970-01-01
    • 2022-01-27
    • 2016-11-11
    相关资源
    最近更新 更多