From f25ae2d4cae0da3b411ade639342f5bfa0e21df9 Mon Sep 17 00:00:00 2001 From: Mike Anderson Date: Thu, 9 Jan 2014 19:36:29 -0800 Subject: [PATCH 1/9] add post request --- lib/Twitter.js | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/lib/Twitter.js b/lib/Twitter.js index 7ac1e96..2af556f 100644 --- a/lib/Twitter.js +++ b/lib/Twitter.js @@ -90,6 +90,12 @@ Twitter.prototype.getTweet = function (params, error, success) { this.doRequest(url, error, success); }; +Twitter.prototype.createTweet = function (body, error, success) { + var path = '/statuses/update.json'; + var url = this.baseUrl + path; + this.postRequest(url, body, 'application/json', error, success); +}; + Twitter.prototype.doRequest = function (url, error, success) { this.oauth.get(url, this.accessToken, this.accessTokenSecret, function (err, body, response) { console.log('URL [%s]', url); @@ -101,6 +107,17 @@ Twitter.prototype.doRequest = function (url, error, success) { }); }; +Twitter.prototype.postRequest = function (url, post_body, post_content_type, error, success) { + this.oauth.post(url, this.accessToken, this.accessTokenSecret, post_body, post_content_type, function (err, body, response) { + console.log('URL [%s]', url); + if (!err && [200, 201, 202].indexOf(response.statusCode)) { + success(body); + } else { + error(err, response, body); + } + }); +}; + Twitter.prototype.buildQS = function (params) { if (params && Object.keys(params).length > 0) { return '?' + qs.stringify(params); From 7ea2c917ae430adadc6dda4bc51108cc36f51f62 Mon Sep 17 00:00:00 2001 From: Mike Anderson Date: Thu, 9 Jan 2014 20:10:43 -0800 Subject: [PATCH 2/9] debug output --- lib/Twitter.js | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/Twitter.js b/lib/Twitter.js index 2af556f..7fb237f 100644 --- a/lib/Twitter.js +++ b/lib/Twitter.js @@ -110,6 +110,7 @@ Twitter.prototype.doRequest = function (url, error, success) { Twitter.prototype.postRequest = function (url, post_body, post_content_type, error, success) { this.oauth.post(url, this.accessToken, this.accessTokenSecret, post_body, post_content_type, function (err, body, response) { console.log('URL [%s]', url); + console.log('response ' + response.statusCode); if (!err && [200, 201, 202].indexOf(response.statusCode)) { success(body); } else { From d2e6c09e2bdf183c753d22868ae004ce2a0dab98 Mon Sep 17 00:00:00 2001 From: Mike Anderson Date: Thu, 9 Jan 2014 20:15:11 -0800 Subject: [PATCH 3/9] only look for response code 200 --- lib/Twitter.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Twitter.js b/lib/Twitter.js index 7fb237f..4c8a69a 100644 --- a/lib/Twitter.js +++ b/lib/Twitter.js @@ -111,7 +111,7 @@ Twitter.prototype.postRequest = function (url, post_body, post_content_type, err this.oauth.post(url, this.accessToken, this.accessTokenSecret, post_body, post_content_type, function (err, body, response) { console.log('URL [%s]', url); console.log('response ' + response.statusCode); - if (!err && [200, 201, 202].indexOf(response.statusCode)) { + if (!err && response.statusCode == 200) { success(body); } else { error(err, response, body); From 8e65c40ac7b2deb3313c2dba33d67d98dbd4d0eb Mon Sep 17 00:00:00 2001 From: Mike Anderson Date: Thu, 9 Jan 2014 20:16:03 -0800 Subject: [PATCH 4/9] more debug --- lib/Twitter.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/Twitter.js b/lib/Twitter.js index 4c8a69a..cbf1eb5 100644 --- a/lib/Twitter.js +++ b/lib/Twitter.js @@ -109,8 +109,13 @@ Twitter.prototype.doRequest = function (url, error, success) { Twitter.prototype.postRequest = function (url, post_body, post_content_type, error, success) { this.oauth.post(url, this.accessToken, this.accessTokenSecret, post_body, post_content_type, function (err, body, response) { + console.log('--- Twitter API Response ---'); console.log('URL [%s]', url); console.log('response ' + response.statusCode); + console.log(err); + console.log(body); + console.log(response); + console.log('----------------------------'); if (!err && response.statusCode == 200) { success(body); } else { From 81a121c969489820c76cd44a0ca46c9649dcf6e1 Mon Sep 17 00:00:00 2001 From: Mike Anderson Date: Thu, 9 Jan 2014 20:30:01 -0800 Subject: [PATCH 5/9] remove debug --- lib/Twitter.js | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/lib/Twitter.js b/lib/Twitter.js index cbf1eb5..3e0a30a 100644 --- a/lib/Twitter.js +++ b/lib/Twitter.js @@ -112,10 +112,7 @@ Twitter.prototype.postRequest = function (url, post_body, post_content_type, err console.log('--- Twitter API Response ---'); console.log('URL [%s]', url); console.log('response ' + response.statusCode); - console.log(err); - console.log(body); - console.log(response); - console.log('----------------------------'); + console.log('-----------------------------'); if (!err && response.statusCode == 200) { success(body); } else { From 8af5efda0d7845b0658e0edebe0a71afa227d659 Mon Sep 17 00:00:00 2001 From: Mike Anderson Date: Thu, 9 Jan 2014 21:43:48 -0800 Subject: [PATCH 6/9] add search --- lib/Twitter.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/Twitter.js b/lib/Twitter.js index 3e0a30a..b30cea7 100644 --- a/lib/Twitter.js +++ b/lib/Twitter.js @@ -84,6 +84,12 @@ Twitter.prototype.getReTweetsOfMe = function (params, error, success) { this.doRequest(url, error, success); }; +Twitter.prototype.getSearch = function (params, error, success) { + var path = '/search/tweets.json' + this.buildQS(params); + var url = this.baseUrl + path; + this.doRequest(url, error, success); +}; + Twitter.prototype.getTweet = function (params, error, success) { var path = '/statuses/show.json' + this.buildQS(params); var url = this.baseUrl + path; From 28274dbc45fcb116d0ac64f2864e6b599717feed Mon Sep 17 00:00:00 2001 From: Mike Anderson Date: Thu, 9 Jan 2014 22:19:31 -0800 Subject: [PATCH 7/9] don't escape search terms --- lib/Twitter.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Twitter.js b/lib/Twitter.js index b30cea7..682ded4 100644 --- a/lib/Twitter.js +++ b/lib/Twitter.js @@ -85,7 +85,7 @@ Twitter.prototype.getReTweetsOfMe = function (params, error, success) { }; Twitter.prototype.getSearch = function (params, error, success) { - var path = '/search/tweets.json' + this.buildQS(params); + var path = '/search/tweets.json?q=' + params.q; var url = this.baseUrl + path; this.doRequest(url, error, success); }; From 76cf28c152eba58c02bd7efcc01d8837ed4b140f Mon Sep 17 00:00:00 2001 From: Mike Anderson Date: Thu, 9 Jan 2014 22:23:30 -0800 Subject: [PATCH 8/9] undo --- lib/Twitter.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Twitter.js b/lib/Twitter.js index 682ded4..b30cea7 100644 --- a/lib/Twitter.js +++ b/lib/Twitter.js @@ -85,7 +85,7 @@ Twitter.prototype.getReTweetsOfMe = function (params, error, success) { }; Twitter.prototype.getSearch = function (params, error, success) { - var path = '/search/tweets.json?q=' + params.q; + var path = '/search/tweets.json' + this.buildQS(params); var url = this.baseUrl + path; this.doRequest(url, error, success); }; From 956b6142edfcf5bcbd0ad3589a49f2715ce2d849 Mon Sep 17 00:00:00 2001 From: Mike Anderson Date: Mon, 13 Jan 2014 14:50:22 -0800 Subject: [PATCH 9/9] remove debug --- lib/Twitter.js | 4 ---- 1 file changed, 4 deletions(-) diff --git a/lib/Twitter.js b/lib/Twitter.js index b30cea7..7ab9643 100644 --- a/lib/Twitter.js +++ b/lib/Twitter.js @@ -115,10 +115,6 @@ Twitter.prototype.doRequest = function (url, error, success) { Twitter.prototype.postRequest = function (url, post_body, post_content_type, error, success) { this.oauth.post(url, this.accessToken, this.accessTokenSecret, post_body, post_content_type, function (err, body, response) { - console.log('--- Twitter API Response ---'); - console.log('URL [%s]', url); - console.log('response ' + response.statusCode); - console.log('-----------------------------'); if (!err && response.statusCode == 200) { success(body); } else {