So 99% of the time my token exchange process works just fine, but occasionally Strava responds with a "Bad Request" message.
I've confirmed that each authorization request is accepted, and I receive a query string formatted as expected, looking like:
"code":"012345ab6c7d89e48d7e92a0e381024deb1f0a7b",
"scope":"activity:read_all,activity:write,profile:read_all,read,read_all"
but occasionally the POST call to https://www.strava.com/oauth/token receives this response:
{ "message":"Bad Request",
"errors": [{
"resource":"AuthorizationCode",
"field":"code",
"code":"invalid"
}]
}
This issue is so intermittent that I can't reproduce it, but I'm sure I only try to use the short-lived code once...
Any ideas what might be going wrong?