From 0924ea033d6238baa93e76b218698c12e7a598cb Mon Sep 17 00:00:00 2001 From: Zed Date: Fri, 10 Jan 2020 18:18:22 +0100 Subject: [PATCH] Catch failed guest token exception --- src/api/media.nim | 6 +++++- src/routes/media.nim | 4 +++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/api/media.nim b/src/api/media.nim index f82194c..41257d1 100644 --- a/src/api/media.nim +++ b/src/api/media.nim @@ -57,7 +57,11 @@ proc getGuestToken(agent: string; force=false): Future[string] {.async.} = let headers = genHeaders({"authorization": auth}, agent, base, lang=false) newClient() - let json = parseJson(await client.postContent($(apiBase / tokenUrl))) + var res: string + try: res = await client.postContent($(apiBase / tokenUrl)) + except: return + + let json = parseJson(res) if json != nil: result = json["guest_token"].to(string) diff --git a/src/routes/media.nim b/src/routes/media.nim index 182605f..0510d7a 100644 --- a/src/routes/media.nim +++ b/src/routes/media.nim @@ -31,10 +31,12 @@ proc createMediaRouter*(cfg: Config) = let client = newAsyncHttpClient() try: await client.downloadFile($uri, filename) - client.safeClose() except HttpRequestError: + client.safeClose() removeFile(filename) resp Http404 + finally: + client.safeClose() sendFile(filename)