Utwórz nowy gist za pomocą Github API v3 przy użyciu curl
Po dłuższej walce o wysłanie prywatnego Gist do Githuba za pomocą API V3 prawie się poddałem. Prawie. Być może ktoś również napotkał podobny problem lub wie, jakie może być uzasadnienie następującego zachowania:
W tej chwili polecenie curl wygląda tak:
<code>curl -H "Authorization: bearer MY_AUTHORIZATION_TOKE" -H "Accept: application/json" -H "Content-type: application/json" -X POST -d '{"public":false,"files":{"test.txt":{"content":"String file contents"}}}' https://api.github.com/gists </code>
Próbowałem też
<code>curl -H "Authorization: bearer MY_AUTHORIZATION_TOKE" -X POST -d '{"public":false,"files":{"test.txt":{"content":"String file contents"}}}' https://api.github.com/gists </code>
Jestem w stanie stworzyć gist bez tokena autoryzacji, używając dokładnie tych samych danych:
<code>curl -X POST -d '{"public":true,"files":{"test.txt":{"content":"String file contents"}}}' https://api.github.com/gists </code>
Ale w takim przypadku będzie anonimowy
Takie same wyniki, jeśli chcę opublikować je jako publiczne
W każdym razie Github mnie zwraca
<code>HTTP/1.1 404 Not Found { "message": "Not Found" } </code>
Jestem pewien, że jestem upoważniony, takcurl -H "Authorization: bearer MY_AUTHORIZATION_TOKE" https://api.github.com/user
zwraca moje dane użytkownika.
Zakres zastosowania to:
https://github.com/login/oauth/authorize?client_id=...&scope=gist
Powinien więc mieć uprawnienia do odczytu i zapisu.