[英]Local instance of gitlab does not respond to REST-calls from the API documentation located in "/gitlab/doc/api/v4"
[英]Gitlab REST API file download in subfolder
我在本地服务器上试用 gitlab REST API 并且遇到了一些问题,从子文件夹中检索文件。 以下请求有效:
curl --header "PRIVATE-TOKEN: <private-token>" "https://my.domain.com/gitlab/api/v4/projects/2/repository/tree?ref=main"
curl --header "PRIVATE-TOKEN: <private-token>" "https://my.domain.com/gitlab/api/v4/projects/2/repository/tree?path=Build&ref=main"
curl --header "PRIVATE-TOKEN: <private-token>" "https://my.domain.com/gitlab/api/v4/projects/2/repository/files/README%2Emd&ref=main"
但是,当我尝试在子文件夹中下载文件时,我总是得到{ error: '404 Not Found' }
。
curl --header "PRIVATE-TOKEN: <private-token>" "https://my.domain.com/gitlab/api/v4/projects/2/repository/files/Build%2Ftest%2Etxt&ref=main"
文件夹结构在哪里:
- Build
- test.txt
- README.md
和我的 nginx 配置与 gitlab 在一个相对的 url 上,由一个 Z05B6053C41A2DA4EAZ6 托管的容器托管,看起来像这样:
################
## GITLAB DEV ##
################
location /dev {
root /home/git/gitlab/public;
client_max_body_size 0;
proxy_http_version 1.1;
proxy_pass http://193.174.29.12:1234/dev;
# proxy_max_temp_file_size 0;
gzip off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-For-Proto https;
proxy_set_header X-Forwarded-Ssl on;
}
这里的问题是 nginx 配置用于使用 gitlab 和相对 url。 我不得不改变
proxy_pass http://193.174.29.12:1234/dev;
至
proxy_pass http://193.174.29.12:1234;
因为其他一切似乎都在解码 url 并且请求将从
curl --header "PRIVATE-TOKEN: <private-token>" "https://my.domain.com/gitlab/api/v4/projects/2/repository/files/Build%2Ftest%2Etxt&ref=main"
至
curl --header "PRIVATE-TOKEN: <private-token>" "https://my.domain.com/gitlab/api/v4/projects/2/repository/files/Build/test.txt&ref=main"
因此没有被 gitlab 识别。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.