Hier ist ein Beispiel für eine cURL Anfrage an die GitHub api v4, die Rückkehr einen Fehler hält:gültig GitHub api v4 Abfrage hält Fehler „JSON Probleme Parsen“ Rückkehr
curl -H "Authorization: bearer token" -X POST -d " \
{ \
\"query\": \"query { repositoryOwner(login: \"brianzelip\") { id } }\" \
} \
" https:\/\/api.github.com\/graphql
Der Fehler, der zurückgegeben wird:
{
"message": "Problems parsing JSON",
"documentation_url": "https://developer.github.com/v3"
}
Warum bekomme ich diesen Fehler?
Gemäß der GH api v4 docs about forming query calls die oben cURL Befehl gültig ist. Hier ist, was die docs sagen, dass mein Anspruch sichert, dass die oben cURL Befehl gültig ist:
curl -H "Authorization: bearer token" -X POST -d " \
{ \
\"query\": \"query { viewer { login }}\" \
} \
" https://api.github.com/graphql
Note: The string value of "query" must escape newline characters or the schema will not parse it correctly. For the POST body, use outer double quotes and escaped inner double quotes.
Wenn ich geben Sie die obige Abfrage in die GitHub GraphQL API Explorer, bekomme ich das erwartete Ergebnis. Das Format des oben cURL Befehls sieht wie folgt für die GH GraphQL Explorer:
{
repositoryOwner(login: "brianzelip") {
id
}
}
Ist es nicht genial, wie die JSON GraphQL Entdecken richtig analysiert, aber wenn die API mit den exakt gleichen Kriterien es ist problematisch. – bart