Gitlab API Обновляет существующий файл в репозитории, выдавая 400 ошибок в шаблоне остальных - PullRequest
0 голосов
/ 30 октября 2018

Я пытаюсь редактировать существующий файл в репозитории, используя gitlab v4 api, Когда я попытался отредактировать файл с помощью клиента-почтальона, он выполняется без проблем, возвращается статус 200 Когда я пробовал то же самое с SpringBoot RestTemplate, я всегда получал ошибку 400 неверных запросов. Я совершенно не знаю, что на самом деле происходит. URL отдыха: https://domainname/api/v4/projects/51/repository/files/src%2Fmain%2Fresources%2Fapplication.yml

Объект запроса, напечатанный с использованием LOG:

[branch=master, content=server:port: value, commit_message=port number updated, file_path=src%2Fmain%2Fresources%2Fapplication.yml]

вызов API resttemplate,

HttpEntity<?> entity = new HttpEntity<Object>(request, header);
    restTemplate.exchange(gitlabApiUrl, HttpMethod.PUT, entity, Object.class);

Когда я попробовал то же самое тело запроса с почтальоном, я получаю 200 успеха

Это конечная точка покоя, https://domainname/api/v4/projects/:projectId/repository/files/:file_path

Кто-нибудь знает, что происходит?

Справочный документ: https://docs.gitlab.com/ee/api/repository_files.html#update-existing-file-in-repository

1 Ответ

0 голосов
/ 20 ноября 2018

Вы можете попробовать альтернативную опцию COMMIT функциональности в gitlab.

https://docs.gitlab.com/ee/api/commits.html#create-a-commit-with-multiple-files-and-actions

...