mirror of
https://github.com/nim-lang/Nim.git
synced 2026-07-19 23:41:29 +00:00
close #5726
Turned out that the old code was wrong. I'm not sure why it used to work.
`response.body` properly resolves to an async proc defined in the httpclient
module with the following signature:
proc body*(response: AsyncResponse): Future[string] {.async.}
Perhaps the old code was somehow matching the body field of the `AsyncResponse`
object, which is marked as private.
This commit is contained in:
@@ -29,17 +29,19 @@ proc newBountySource(team, token: string): BountySource =
|
||||
result.client.headers["Referer"] = "https://salt.bountysource.com/teams/nim/admin/supporters"
|
||||
result.client.headers["Origin"] = "https://salt.bountysource.com/"
|
||||
|
||||
import typetraits
|
||||
|
||||
proc getSupporters(self: BountySource): Future[JsonNode] {.async.} =
|
||||
let response = await self.client.get(apiUrl &
|
||||
"/supporters?order=monthly&per_page=200&team_slug=" & self.team)
|
||||
doAssert response.status.startsWith($Http200)
|
||||
return parseJson(response.body)
|
||||
return parseJson(await response.body)
|
||||
|
||||
proc getGithubUser(username: string): Future[JsonNode] {.async.} =
|
||||
let client = newAsyncHttpClient()
|
||||
let response = await client.get(githubApiUrl & "/users/" & username)
|
||||
if response.status.startsWith($Http200):
|
||||
return parseJson(response.body)
|
||||
return parseJson(await response.body)
|
||||
else:
|
||||
echo("Could not get Github user: ", username, ". ", response.status)
|
||||
return nil
|
||||
|
||||
Reference in New Issue
Block a user