I use Yandex-transleyt, and upon request receive an answer "API key is invalid." It just received the keys. Council on the format of the query, this topic does not help (Yandex API Translator error - 401 API key is invalid). Request format as a guide: https://tech.yandex.com/translate/doc/dg/reference/translate-docpage/
My request:
var url = "https://translate.yandex.net/api/v1.5/tr.json/translate?";
var keyAPI = "trnsl.1.1.20161125T152027Z.65e73e18a60f3051.7764a7a11754995544ad557501df9e14abbfb6e0";
var params = "key=" + keyAPI + "&text=" + textApi + "&lang=" + langApi;
var vm = this;
$http({
url: url,
method: 'POST',
params: params
});
Maybe the wrong request parameters?
The complete code here or here:
var app = angular.module('jsbin', []);
app.controller('DemoCtrl', function($scope, $http) {
$scope.SendData = function() {
// тут данные
var textApi = 'Hello';
var langApi = 'en-ru';
var url = "https://translate.yandex.net/api/v1.5/tr.json/translate?";
var keyAPI = "trnsl.1.1.20161125T152027Z.65e73e18a60f3051.7764a7a11754995544ad557501df9e14abbfb6e0";
var params = "key=" + keyAPI + "&text=" + textApi + "&lang=" + langApi;
var vm = this;
$http({
url: url,
method: 'POST',
params: params
})
.success(function(data, headers, status, config) {
$scope.PostDataResponse = data;
vm.data = data;
console.log(data);
})
.error(function(data, headers, status, config) {
$scope.ResponseDetails = "Data: " + data +
"<hr />status: " + status +
"<hr />config: " + config;
console.log("error1");
console.log(data);
console.log(status);
console.log(config);
});
};
});
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<meta charset="utf-8">
<title>Angular JS</title>
</head>
<body ng-app="jsbin">
<div ng-controller="DemoCtrl as vm">
<button ng-click="SendData()">Send</button>
<br>
Data: {{PostDataResponse}}<br>
{{vm.data}}
{{vm.PostDataResponse}}
Data: {{scope.PostDataResponse}}
{{vm.data}}
</div>
</body>
</html>