【发布时间】:2017-12-20 05:48:49
【问题描述】:
我正在尝试通过 NetBeans 做一个简单的翻译器。首先,我尝试从论坛页面实现以下代码:(https://www.java-forums.org/java-applets/38563-language-translation.html)
import com.google.api.translate.Language;
import com.google.api.translate.Translate;
public class Main {
public static void main(String[] args) throws Exception {
// Set the HTTP referrer to your website address.
Translate.setHttpReferrer("http://code.google.com/p/google-api-translate-java");
String translatedText = Translate.execute("Bonjour monde le",
Language.FRENCH, Language.ENGLISH);
System.out.println(translatedText);
}
}
我无法编译代码。尽管我添加了相关的 jar,但我无法解析 setHttpReferrer() 的符号。
其次,我尝试从页面 (https://www.java-forums.org/java-applets/61655-language-translation-using-google-api.html) 实现另一个解决方案。我得到了我的 API 密钥并设置了它。
import com.google.api.GoogleAPI;
import com.google.api.translate.Language;
import com.google.api.translate.Translate;
public class Translation
{
public static void main(String[] args) throws Exception {
GoogleAPI.setHttpReferrer("http://code.google.com/p/google-api-translate-java");
GoogleAPI.setKey("i have set my Api key");
String translatedText = Translate.DEFAULT.execute("Bonjour le monde", Language.FRENCH, Language.ENGLISH);
System.out.println(translatedText);
}
}
当我尝试运行它时,我得到403 错误为空。有没有一种从 Java 应用程序调用谷歌翻译的简单方法?
【问题讨论】:
-
您很可能需要一个 API 密钥。 Google 不只是让任何人随意访问他们的 API 端点
-
我想我不能免费使用它?
-
我的意思是你可以免费使用它。您需要 API 密钥才能访问该服务。谷歌翻译的官方文档比随机论坛帖子更多
-
事实上我在这一行设置了我自己的 API 密钥 GoogleAPI.setKey("i have set my Api key");
-
再次,停止从随机论坛帖子中逐行复制代码行。
"i have set my Api key"不是 Google 提供的键。这不是你自己设置的字符串。您需要一个 Google 开发者帐户,官方文档中会明确说明
标签: java http-status-code-403 google-translate