java - Google API 翻译返回错误

标签 java google-api

我有一部分代码使用谷歌API翻译,我这样写我的代码

package pp;

import com.google.api.GoogleAPI;
import com.google.api.translate.Language;
import com.google.api.translate.Translate;


public class tr
{
    public static void main(String[] args) throws Exception{
        GoogleAPI.setHttpReferrer("http://code.google.com/p/google-api-translate-java/");
         GoogleAPI.setKey("AIzaSyBi7y4EgC0B-Q9UZg-tOzsOI0sLQ8F1Oow");

        String result = Translate.DEFAULT.execute("hello", Language.ENGLISH, Language.ARABIC);

        System.out.println(result);
        System.out.println("succeeded");


    }


    }

但是当我运行它时,我收到此错误

调试结果: 错误:[google-api-translate-java] 检索翻译时出错。

运行结果

Error: [google-api-translate-java] Error retrieving translation.
Exception in thread "main" com.google.api.GoogleAPIException: java.lang.Exception: [google-api-translate-java] Error retrieving translation.
    at com.google.api.translate.TranslateV2.execute(TranslateV2.java:68)
    at pp.tr.main(tr.java:14)
Caused by: java.lang.Exception: [google-api-translate-java] Error retrieving translation.
    at com.google.api.GoogleAPI.retrieveJSON(GoogleAPI.java:99)
    at com.google.api.translate.TranslateV2.execute(TranslateV2.java:62)
    ... 1 more
Caused by: java.io.IOException: Server returned HTTP response code: 403 for URL: https://www.googleapis.com/language/translate/v2?key=AIzaSyBi7y4EgC0B-Q9UZg-tOzsOI0sLQ8F1Oow&q=hello&target=ar&source=en
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
    at sun.net.www.protocol.http.HttpURLConnection$6.run(HttpURLConnection.java:1458)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:1452)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1106)
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:254)
    at com.google.api.GoogleAPI.retrieveJSON(GoogleAPI.java:93)
    ... 2 more
Caused by: java.io.IOException: Server returned HTTP response code: 403 for URL: https://www.googleapis.com/language/translate/v2?key=AIzaSyBi7y4EgC0B-Q9UZg-tOzsOI0sLQ8F1Oow&q=hello&target=ar&source=en
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1403)
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:254)
    at com.google.api.GoogleAPI.retrieveJSON(GoogleAPI.java:89)
    ... 2 more

最佳答案

您必须从 APIs Console 项目的“服务”选项卡启用翻译 API .

此页面包含所有定价详细信息:https://developers.google.com/translate/v2/pricing

关于java - Google API 翻译返回错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12121227/

相关文章:

google-analytics - 谷歌分析电子表格附加触发器

c# - 通过 Google API 为新用户注册两步验证

java - System.exit(status),>> 此方法永远不会正常返回。这是什么意思

java - <S extends CharSequence> S 的返回类型是什么意思?

java - 如何使缓冲读取器从头开始读取而不是使用另一个对象

java - 如何将 yml 对象绑定(bind)到声明为该对象实现的接口(interface)的字段?

php - 尝试验证 Google Play 上的应用内购买时出错

google-api - Google Apps "AdminReports"未定义。

python - Google Analytics Management API - Python - 获取 View /配置文件/帐户列表。对于单个用户

java - 屏幕解锁 android 的语音命令