From b416778eeee8c384c37409a352eb0e59b10d66e8 Mon Sep 17 00:00:00 2001 From: Wesley Kerfoot Date: Thu, 19 Dec 2019 15:08:35 -0500 Subject: [PATCH] refactoring --- src/twit2blog.nim | 3 ++- src/twit2blogpkg/twitter.nim | 18 ++++++++++++++---- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/src/twit2blog.nim b/src/twit2blog.nim index a4a060e..c55aa1f 100644 --- a/src/twit2blog.nim +++ b/src/twit2blog.nim @@ -4,4 +4,5 @@ import twit2blogpkg/twitter when isMainModule: - echo "weskerfoot".listTweets.repr + #echo "weskerfoot".listTweets.repr + echo "1207676036995002368".getTweet.repr diff --git a/src/twit2blogpkg/twitter.nim b/src/twit2blogpkg/twitter.nim index b8c303a..4c42819 100644 --- a/src/twit2blogpkg/twitter.nim +++ b/src/twit2blogpkg/twitter.nim @@ -31,15 +31,25 @@ proc getToken*() : string = "Bearer " & response["access_token"].getStr - -proc listTweets*(user : string) : JsonNode = +proc tweetClient() : HttpClient = var client = newHttpClient() - let reqTarget = fmt"/1.1/statuses/user_timeline.json?count=100&screen_name={user}" - let url = fmt"https://api.twitter.com{reqTarget}" client.headers = newHttpHeaders( { "Authorization" : getToken() } ) + client + +proc listTweets*(user : string) : JsonNode = + var client = tweetClient() + let reqTarget = fmt"/1.1/statuses/user_timeline.json?count=100&screen_name={user}" + let url = fmt"https://api.twitter.com{reqTarget}" + + client.request(url, httpMethod = HttpGet).body.parseJson + +proc getTweet*(tweetID : string) : JsonNode = + var client = tweetClient() + let reqTarget = fmt"/1.1/statuses/show.json?id={tweetID}" + let url = fmt"https://api.twitter.com{reqTarget}" client.request(url, httpMethod = HttpGet).body.parseJson