diff --git a/lib/Twitter.js b/lib/Twitter.js index 7ac1e96..7ab9643 100644 --- a/lib/Twitter.js +++ b/lib/Twitter.js @@ -84,12 +84,24 @@ 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; 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 +113,16 @@ 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) { + if (!err && response.statusCode == 200) { + success(body); + } else { + error(err, response, body); + } + }); +}; + Twitter.prototype.buildQS = function (params) { if (params && Object.keys(params).length > 0) { return '?' + qs.stringify(params);