使用ajax和google翻译API翻译文本

问题描述 投票:0回答:1

当我点击我的html中的按钮时,我想执行此函数并进行ajax调用,但似乎不推荐使用API​​ Url,因为我在控制台中出现错误:未捕获的TypeError:无法读取null的属性“translatedText”

任何的想法?谢谢

这是我的javascript函数:

function translateCaption() {
$.ajax({
    url: 'https://ajax.googleapis.com/ajax/services/language/translate',
    dataType: 'jsonp',
    data: {
        q: 'Hello world!',  // text to translate
        v: '1.0',
        langpair: 'en|es'
    },   // '|es' for auto-detect
    success: function (result) {
        alert(result.responseData.translatedText);
    },
    error: function (XMLHttpRequest, errorMsg, errorThrown) {
        alert(errorMsg);
    }
});
}

这是我的HTML:

<button onclick="translateCaption()" class="button-translate" type="button">Translate</button>
ajax api google-translate
1个回答
1
投票

目前暂时无法解决前端解决方案。您的代码的响应(可以在浏览器中的请求响应中看到)是:/ * callback * / jQuery22108465697200462694_1552511749760({“responseData”:null,“responseDetails”:“请使用Translate v2。请参阅http://code.google.com/apis/language/translate/overview.html”,“responseStatus”:403} )

我建议看看https://cloud.google.com/translate/docs/translating-text有不同编程语言(后端)的例子,并引用了GitHub。

© www.soinside.com 2019 - 2024. All rights reserved.