From 8e9a513a3f714664252149617d37781bc969092f Mon Sep 17 00:00:00 2001 From: Benjamin LONGEARET Date: Thu, 4 Jun 2015 07:57:36 +0200 Subject: [PATCH] Convert data in queryParams when GET or HEAD requests --- github.js | 9 ++++++++- test/test.repo.js | 8 ++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/github.js b/github.js index 52582a14..197163e6 100644 --- a/github.js +++ b/github.js @@ -48,7 +48,14 @@ function _request(method, path, data, cb, raw, sync) { function getURL() { var url = path.indexOf('//') >= 0 ? path : API_URL + path; - return url + ((/\?/).test(url) ? '&' : '?') + (new Date()).getTime(); + url += ((/\?/).test(url) ? '&' : '?'); + // Fix #195 about XMLHttpRequest.send method and GET/HEAD request + if (_.isObject(data) && _.indexOf(['GET', 'HEAD'], method) > -1) { + url += '&' + _.map(data, function (v, k) { + return k + '=' + v; + }).join('&'); + } + return url + '&' + (new Date()).getTime(); } var xhr = new XMLHttpRequest(); diff --git a/test/test.repo.js b/test/test.repo.js index ccdc496f..978ebb07 100644 --- a/test/test.repo.js +++ b/test/test.repo.js @@ -72,6 +72,14 @@ test("Repo API", function(t) { }); }); + t.test('repo.getSha', function(q) { + repo.getSha('master', '.gitignore', function(err, sha) { + q.error(err, 'get sha error: ' + err); + q.ok(sha, '153216eb946aedc51f4fe88a51008b4abcac5308', 'Returned sha message.'); + q.end(); + }); + }); + clearTimeout(timeout); t.end();