Html 请求Google文本到语音API

Html 请求Google文本到语音API,html,url,hyperlink,google-translate,Html,Url,Hyperlink,Google Translate,我有一个网址:http://translate.google.com/translate_tts?ie=utf-8&tl=en&q=Hello+world 当我把它放在浏览器的地址栏上并按enter键时,我得到一个mp3文件,上面有合成语音,说“Hello world”。一切都是正确的 但现在我有了一个HTML链接,可以重定向到此URL,如下所示: <a href="http://translate.google.com/translate_tts?ie=utf-8&tl=en&a

我有一个网址:
http://translate.google.com/translate_tts?ie=utf-8&tl=en&q=Hello+world
当我把它放在浏览器的地址栏上并按enter键时,我得到一个mp3文件,上面有合成语音,说“Hello world”。一切都是正确的

但现在我有了一个HTML链接,可以重定向到此URL,如下所示:

<a href="http://translate.google.com/translate_tts?ie=utf-8&tl=en&q=Hello+world">Link</a>


当我点击这个链接时,我没有得到一个文件,而是得到一个错误(简单的QuickTime徽标)。有人能解释一下为什么会这样以及我该如何解决我的问题吗?

解释是谷歌限制了这项服务的使用:根据,如果HTTP请求包含非空字符串,谷歌将返回404错误

当您在地址栏中键入URL时,这是正常的,因为没有引用URL传输到Google。当你点击一个超链接时,你有一个参考者,谷歌会阻止你的请求

NB:我测试了你的URL(请参阅),它成功了。我怀疑这只是因为我以前尝试过在地址栏中键入URL,而资源仍在浏览器缓存或音频插件(VLC)缓存中


NB2:有关解决方法,请参阅。

您使用的浏览器是什么?当我试图用firefox打开你的链接时,我只得到一个空的QuickTime徽标,而当我用Opera打开它时,我得到一个错误,说明这样的页面不存在。奇怪的是,当我在地址栏中指定了相同的地址,按下enter键时,我得到了一个正确的文件。我使用的是Firefox 16,声音是用VLC插件播放的。我试过谷歌Chrome(默认的声音播放器),它也能工作。。。这似乎是苹果Quicktime播放器插件的问题。你用的是什么浏览器?我用的是Firefox和Opera。我在其他电脑上试过,结果是一样的。我已经更新了答案。