Skip to content

Handle paginated API - #5

Open
kousu wants to merge 3 commits into
fatbattk:masterfrom
santropolroulant:get_record_pagination
Open

Handle paginated API#5
kousu wants to merge 3 commits into
fatbattk:masterfrom
santropolroulant:get_record_pagination

Conversation

@kousu

@kousu kousu commented Jun 2, 2018

Copy link
Copy Markdown

Without this, a large DO account will randomly break get_record(),
because get_record() only looked at the first page, before, and
then it would just create a new record from scratch, potentially
leaving you with hundreds of duplicate A records in your account
(which just makes the account even larger!).

json_value had to go because its awk program was too simple to handle
the recursiveness of json; in particular, : is a delimiter in json,
but it's also a delimiter in URLs, so getting the next page's URL
would break. I replaced it, and awk, with a new dependency on
https://stedolan.github.io/jq/, which is unfortunate but necessary.
There's no way to correctly parse javascript in a bash one-liner.

itsupport added 2 commits June 1, 2018 20:46
Without this, a large DO account will randomly break get_record(),
because get_record() only looked at the first page, before, and
then it would just create a new record from scratch, potentially
leaving you with hundreds of duplicate A records in your account
(which just makes the account even larger!).

json_value had to go because its awk program was too simple to handle
the recursiveness of json; in particular, : is a delimiter in json,
but it's also a delimiter in URLs, so getting the next page's URL
would break. I replaced it, and awk, with a new dependency on
https://stedolan.github.io/jq/, which is unfortunate but necessary.
There's no way to correctly parse javascript in a bash one-liner.
I regularly observed DO's API giving me more than 50 results per page,
so instead of guessing at what the count should be if we don't receive it,
skip the entire page.
@kousu kousu mentioned this pull request Jun 2, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant