我正在尝试在我的.net项目中使用谷歌翻译api。我已经安装了这个库
安装包Google.Cloud.Storage.V1
在我的代码中,我正在尝试这个
Console.OutputEncoding = System.Text.Encoding.Unicode;
TranslationClient client = TranslationClient.Create();
var response = client.TranslateText("Hello World.", "ru");
Console.WriteLine(response.TranslatedText);
我收到身份验证错误,我真的很困惑如何做到这一点。我不能只是将api密钥传递给create函数吗?或者这是一个问题吗?
我看到Create函数有一个选项
GoogleCredential.FromJson(parmas)
但是我可以传递一个json字符串吗?如果是,那JSON的格式应该是什么?
提前致谢。
答案 0 :(得分:2)
请参阅此链接 - https://developers.google.com/identity/protocols/application-default-credentials。下载.json文件。
安装Google.Cloud.Translation.V2
string credential_path = @"D:\..\..\cred.json";
System.Environment.SetEnvironmentVariable("GOOGLE_APPLICATION_CREDENTIALS", credential_path);
答案 1 :(得分:2)
以下是示例应用程序:
https://github.com/GoogleCloudPlatform/dotnet-docs-samples
身份验证信息:
https://cloud.google.com/docs/authentication/
https://cloud.google.com/docs/authentication/api-keys
首先安装NuGet包:
PM>安装包Google.Cloud.Translation.V2 -pre
这是对我有用的绝对最简单的代码。 3行代码,还不错:))
var service = new TranslateService(new BaseClientService.Initializer { ApiKey = apiKeyTranslate });
var client = new TranslationClientImpl(service, TranslationModel.ServiceDefault);
var result = client.TranslateText("Hello, World", "sr");
Response.Write(result.TranslatedText);