Slow down Transifex

per: http://docs.transifex.com/api/#api-rate-limits
Rackspace seems to rate limit GET requests to 5/sec
This commit is contained in:
Bryan Housel
2016-06-07 14:41:33 -04:00
parent 8a99e3de7e
commit 8a578fc1d8
+7 -4
View File
@@ -1,6 +1,6 @@
/* Downloads the latest translations from Transifex */
var request = require('request'),
var request = require('request').defaults({maxSockets: 1}),
yaml = require('js-yaml'),
fs = require('fs'),
_ = require('../js/lib/lodash.js');
@@ -10,6 +10,7 @@ var outdir = './dist/locales/';
var api = 'https://www.transifex.com/api/2/';
var project = api + 'project/id-editor/';
/*
* Transifex oddly doesn't allow anonymous downloading
*
@@ -67,18 +68,20 @@ function getLanguage(resource) {
code = code.replace(/-/g, '_');
var url = resource + 'translation/' + code;
if (code === 'vi') url += '?mode=reviewed';
request.get(url, { auth : auth },
function(err, resp, body) {
request.get(url, { auth : auth }, function(err, resp, body) {
if (err) return callback(err);
console.log(resp.statusCode + ': ' + url);
callback(null, yaml.load(JSON.parse(body).content)[code]);
});
};
}
function getLanguages(resource, callback) {
request.get(resource + '?details', { auth: auth },
var url = resource + '?details';
request.get(url, { auth: auth },
function(err, resp, body) {
if (err) return callback(err);
console.log(resp.statusCode + ': ' + url);
callback(null, JSON.parse(body).available_languages.map(function(d) {
return d.code.replace(/_/g, '-');
}).filter(function(d) {