谷歌从Java应用程序翻译

时间:2017-12-20 05:48:49

标签: java http-status-code-403 google-translate

我正在尝试通过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);
    }
}

我无法编译代码。我得到了无法解析setHttpReferrer()的符号,虽然我添加了相关的jar。

其次,我尝试从页面(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应用程序调用Google Translator的简单方法?

1 个答案:

答案 0 :(得分:1)

403错误在常见问题解答中记录为“超出您的配额”。 https://cloud.google.com/translate/faq

我怀疑,你得到错误是因为你没有正确初始化API,即经过验证,......

查看此代码中的设置。也搜索你好贴边。

https://github.com/GoogleCloudPlatform/google-cloud-java/blob/master/google-cloud-translate/src/test/java/com/google/cloud/translate/TranslateImplTest.java

希望这有帮助。