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)