Google翻译应用程序

时间:2017-07-03 20:58:28

标签: java android google-translate

我正在尝试使用此调用方法使用Google翻译:

StringBuilder result = new StringBuilder();
Log.e("INFO",  "texttotranslate, from and to are:" + texttotranslate + ", " + from + " and " + to);
String key="MY_PERSONAL_API_KEY";
try {
    String encodedText = URLEncoder.encode(texttotranslate, "UTF-8");
    Log.e("INFO",  "encoded without troubles UTF-8");
    String urlStr = "https://www.googleapis.com/language/translate/v2?key=" + key + "&q=" + encodedText + "&target=" + to + "&source=" + from;
    Log.e("INFO",  "called Google APIs correctly (I think)");
    URL url = new URL(urlStr);
    HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
    Log.e("INFO",  "opened httpsURLConnection correctly");
    InputStream stream;
    Log.e("INFO",  "input repsonse stream = "+conn.getResponseCode());
    if (conn.getResponseCode() == 200) //success
    {
        stream = conn.getInputStream();
        Log.e("INFO",  "gets input stream correctly");

    } else
        stream = conn.getErrorStream();
    Log.e("INFO",  "failed to get input stream correctly");
    BufferedReader reader = new BufferedReader(new InputStreamReader(stream));
    String line;

    while ((line = reader.readLine()) != null) {
        result.append(line);
        Log.e("INFO",  "line currently = " + line);
    }

我失败了,得到以下错误:

07-03 13:09:07.167 20916-21078 / net.stuffilike.multitranslater E / INFO:无故障编码UTF-8 07-03 13:09:07.168 20916-21078 / net.stuffilike.multitranslater E / INFO:正确称为Google API(我认为) 07-03 13:09:07.179 20916-21078 / net.stuffilike.multitranslater E / INFO:正确打开httpsURLConnection 07-03 13:09:07.467 20916-21078 / net.stuffilike.multitranslater E / INFO:输入repsonse stream = 400 07-03 13:09:07.468 20916-21078 / net.stuffilike.multitranslater E / INFO:无法正确获取输入流 07-03 13:09:07.468 20916-21078 / net.stuffilike.multitranslater E / INFO:当前行= { 07-03 13:09:07.468 20916-21078 / net.stuffilike.multitranslater E / INFO:line current =“error”:{ 07-03 13:09:07.468 20916-21078 / net.stuffilike.multitranslater E / INFO:line current =“code”:400, 07-03 13:09:07.469 20916-21078 / net.stuffilike.multitranslater E / INFO:line current =“message”:“找不到API密钥。请传递有效的API密钥。”, 07-03 13:09:07.469 20916-21078 / net.stuffilike.multitranslater E / INFO:line current =“errors”:[ 07-03 13:09:07.469 20916-21078 / net.stuffilike.multitranslater E / INFO:当前行= { 07-03 13:09:07.469 20916-21078 / net.stuffilike.multitranslater E / INFO:line current =“message”:“找不到API密钥。请传递有效的API密钥。”, 07-03 13:09:07.469 20916-21078 / net.stuffilike.multitranslater E / INFO:line current =“domain”:“global”, 07-03 13:09:07.469 20916-21078 / net.stuffilike.multitranslater E / INFO:line current =“reason”:“badRequest” 07-03 13:09:07.469 20916-21078 / net.stuffilike.multitranslater E / INFO:当前行=} 07-03 13:09:07.469 20916-21078 / net.stuffilike.multitranslater E / INFO:line current =], 07-03 13:09:07.469 20916-21078 / net.stuffilike.multitranslater E / INFO:line current =“status”:“INVALID_ARGUMENT” 07-03 13:09:07.469 20916-21078 / net.stuffilike.multitranslater E / INFO:当前行=} 07-03 13:09:07.469 20916-21078 / net.stuffilike.multitranslater E / INFO:当前行=} 07-03 13:09:07.498 20916-21078 / net.stuffilike.multitranslater E / INFO:result = {“error”:{“code”:400,“message”:“找不到API密钥。请传递有效的API key。“,”errors“:[{”message“:”找不到API密钥。请传递有效的API密钥。“,”domain“:”global“,”reason“:”badRequest“}],”status“ :“INVALID_ARGUMENT”}}

我已尝试过其他API密钥,但结果相同,建议给我一些其他错误。任何人都可以给我一个有效的线索来吸引我吗?

编辑:根据我发送的字符串,我可以获得需要有效API密钥的错误,或者说明我的客户端发送了格式错误或非法请求的消息。两种类型的请求都包括密钥。有人看过这个吗?

0 个答案:

没有答案