Как обновить файл в GIT с помощью API - выдает ошибку 404 - PullRequest
0 голосов
/ 13 февраля 2020

Я пытаюсь обновить файл в GIT, используя API и получая код ошибки 404.

updateServersonGIT(servList: string): Observable<Array<any>> {
    return this.http.put<Array<any>>("https://api.github.com/repos/amshreyas/servers/contents/serv.json",{"Authorization" : "token <my token>",servList}).pipe(catchError(this.handleError));
  }

Я сгенерировал токен oAuth. Пожалуйста, порекомендуйте.

1 Ответ

0 голосов
/ 15 февраля 2020

Может произойти сбой, потому что вы не указали обязательные поля в документах для go с PUT: https://developer.github.com/v3/repos/contents/#create -или-update-a-file

В частности, необходимо убедиться, что эти поля предоставлены:

  • message - сообщение о фиксации, связанное с изменением
  • committer - объект JSON содержит имя коммиттера и адрес электронной почты
  • content закодированная в base64 строка нового содержимого файла

Вот пример из документов:

{
  "message": "my commit message",
  "committer": {
    "name": "Monalisa Octocat",
    "email": "octocat@github.com"
  },
  "content": "bXkgbmV3IGZpbGUgY29udGVudHM="
}

Мне не ясно, происходит ли это, так как образец не предоставляет достаточно информации для локального запуска для кого-либо еще.

Также может произойти сбой, если на вашем токене не установлено public_repo.

...