2016-05-14 2 views
1

Я использую API из Google Translate для использования текста в речь, но когда я запускаю этот код и кладу свой ключ api в ключ: private static final String BASE_URL = "https: // www.googleapis.com/language/translate/v2?key=[key] & q = hello% 20world & source = en & target = de ";Google translate api 403 запрещен в java

public static void main(String[] args) { 
    say("Hallo Welt"); 

} 
public static void say(String text) { 
    try { 
     File f = new File("translate_tts.mp3"); 
     String sentence = URLEncoder.encode(text,"UTF-8"); 
     String urlString = MessageFormat.format(BASE_URL, sentence,"en"); 
     BinaryResource res = new Resty().bytes(new URI(urlString)); 
     res.save(f); 

     FileInputStream in = new FileInputStream(f); 
     Audio audio = Audio.getInstance(); 
     audio.play(in); 

     Player p = new Player(in); 

     p.play(); 

     p.close(); 
     f.delete(); 

    } catch (UnsupportedEncodingException e) { 
     e.printStackTrace(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } catch (URISyntaxException e) { 
     e.printStackTrace(); 
    } catch (JavaLayerException e) { 
     e.printStackTrace(); 
    } 

} 

У меня ошибка 403, а неправильный код ответа на сервер был возвращен. Можете ли вы помочь мне исправить это?

ответ

0

Google закрыл свой перевод webservice несколько лет назад. В настоящее время он доступен только через веб-страницу.

+0

Каково имя api из google api, которое я могу использовать в речи? Я знал, что в google translate api включен текст в речь (для подробностей я использую этот api для обнаружения и использования вьетнамского текста. –