我想为我的chrome扩展使用免费的谷歌翻译api。
网址:https://translate.googleapis.com/translate_a/single?client=gtx&sl=en&tl=hi&dt=t&dt=t&q=hello
以数组格式返回f.txt文件。
[[["नमस्ते","hello",,,1]],,"en"]我目前正在使用Yandex翻译作为我的扩展。Yandex以JSON格式返回它。https://translate.yandex.net/api/v1.5/tr.json/translate?key=trnsl.1.1.20170222T005237Z.c822f17f30208ee9.7df12d4944735ac8d985d500634196b9155dcbc0&text=hello&lang=hi
{"code":200,"lang":"en-hi","text":["नमस्कार"]}
所以,有没有什么办法,我可以得到上述免费的谷歌翻译api。
发布于 2018-04-25 15:03:04
请使用下面的柱塞代码来翻译JSON对象。您可以在相应语言的代码中更改源和目标。https://embed.plnkr.co/87eEqc/
然后可以使用https://jsonformatter.curiousconcept.com/对JSON进行格式化。
链接中的示例代码片段
$scope.method = 'POST';
$scope.url = 'https://translation.googleapis.com/language/translate/v2?
key=AIzaSyA1bHYc3VOCxotWBY5T61z31C91xgl4Kck';
$scope.data = {
"q" :"Search",
"source": "en",
"target": "es"
};
$scope.header = {'Content-Type': 'application/json'};
$scope.test = function() {
var source = {
"header": {
"Home": "Home",
"Join": "Join",
"Login": "Login",
"Favorites": "Favorites",
"Signout": "Signout",
"Hi": "Hi",
"Wishlist": "Wishlist",
"Cart": "Cart",
"Search": "Search"
},
}
$scope.sourceArray = source;
angular.forEach(source, function(value, key) {
var outerObjKey = key;
var outerArr= source[key];
angular.forEach(outerArr, function(value, key) {
var innerObjKey = key;
var data = {
"q" :value,
"source": "en",
"target": "es"
};
$scope.fetch(data,outerObjKey,innerObjKey,source)
})
});
}
$scope.fetch = function(dataToChange,outerKey,innerKey,scrArr) {
$http({method: $scope.method, url: $scope.url,data:dataToChange,headers:$scope.header})
.success(function(data, status) {
$scope.status = status;
$scope.sourceArray[outerKey][innerKey] = data.data.translations[0].translatedText;
console.log(JSON.stringify($scope.sourceArray));
$scope.jsonString = JSON.stringify($scope.sourceArray);
})
.error(function(data, status) {
$scope.status = status;
$scope.data = "Request failed";
});
};https://stackoverflow.com/questions/42651139
复制相似问题