【问题标题】:issue with Google translation API谷歌翻译 API 的问题
【发布时间】:2011-11-09 01:40:22
【问题描述】:

我需要一个使用 Google Translation API 将西班牙语转换为英语的示例。我尝试使用以下代码。它给出了一些例外。有人可以帮助我吗?

代码:

import  com.google.api.translate.*;
public class GoogleTranslator {

    /**
     * @param args

    */
    @SuppressWarnings("deprecation")
    public static void main(String[] args) {// TODO code application logic here


            try {
                Translate.setHttpReferrer("sp-en");
                String translatedText = Translate.translate("Hola mundo", Language.SPANISH, Language.ENGLISH);
                System.out.println(translatedText);
                } catch (Exception ex) {
                ex.printStackTrace(); }

    }
}

错误:

java.lang.Exception: [google-api-translate-java] Error retrieving translation.
    at com.google.api.GoogleAPI.retrieveJSON(GoogleAPI.java:136)
    at com.google.api.translate.Translate.execute(Translate.java:69)
    at com.google.api.translate.Translate.translate(Translate.java:192)
    at GoogleTranslator.main(GoogleTranslator.java:15)
Caused by: java.net.UnknownHostException: ajax.googleapis.com
    at java.net.PlainSocketImpl.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at sun.net.NetworkClient.doConnect(Unknown Source)
    at sun.net.www.http.HttpClient.openServer(Unknown Source)
    at sun.net.www.http.HttpClient.openServer(Unknown Source)
    at sun.net.www.http.HttpClient.<init>(Unknown Source)
    at sun.net.www.http.HttpClient.New(Unknown Source)
    at sun.net.www.http.HttpClient.New(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(Unknown Source)
    at com.google.api.GoogleAPI.retrieveJSON(GoogleAPI.java:115)
    ... 3 more

【问题讨论】:

标签: java google-translate google-translation-api


【解决方案1】:

您需要弄清楚为什么无法访问此主机:ajax.googleapis.com

异常说:

 java.net.UnknownHostException: ajax.googleapis.com 

javadoc 说 UnknownHostException is throwed 表示无法确定主机的 IP 地址。

你应该使用你的 DNS。

nslookup ajax.googleapis.com

【讨论】:

    【解决方案2】:

    将您的 DNS 设置为 google one

    如果在linux机器上

    sudo gedit /etc/resolv.conf

    添加

    nameserver 8.8.8.8
    nameserver 8.8.4.4
    

    或者如果在 Windows 上转到网络设置并为活动连接设置 DNS

    【讨论】:

      【解决方案3】:

      您没有 api 密钥,例如 GoogleAPI.setKey();我猜你需要这样的东西才能继续

      【讨论】:

        猜你喜欢
        • 2020-09-25
        • 2011-05-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-08-29
        • 2011-12-26
        • 2010-10-10
        相关资源
        最近更新 更多