我想通过使用它的api在gitlab中获取文件内容.首先,我检查我的gitlab版本,其编写为,GitLab Community Edition 9.4.3 b125d21更新asap
然后我创建一个私人令牌和 http:// gitadress/api/v4/projects/id/repository/files?private_token = PRIVATE_TOKEN 返回为;
{"error":"404 Not Found"}
Run Code Online (Sandbox Code Playgroud)
然后我修改查询为;
http:// gitadress/api/v4/projects/222/repository/tree?private_token = PRIVATE_TOKEN 此请求返回为;
[{"id":"8078365d80c","name":"test.js","type":"blob","path":"test.js","mode":"100644"}]
Run Code Online (Sandbox Code Playgroud)
我想要的是获取test.js的内容,但无论我尝试什么,我都无法实现它.
{"error":"404 Not Found"}
Run Code Online (Sandbox Code Playgroud)
如何使用gitlab api获取原始文件内容?文档在这里; https://github.com/gitlabhq/gitlabhq/blob/master/doc/api/repository_files.md#get-raw-file-from-repository
文档提到:
URL 编码的新文件的完整路径。前任。
lib%2Fclass%2Erb
这意味着您需要进行 URL 编码test.js:test%2Ejs。
(请参阅百分比编码:字符数据)
http://gitadress/api/v4/projects/id/repository/files/test%2Ejs/raw?private_token=PRIVATE_TOKEN
Run Code Online (Sandbox Code Playgroud)
例如,您可以添加?ref=master以确保从分支获取内容。master
http://gitadress/api/v4/projects/id/repository/files/test%2Ejs/raw?ref=master&private_token=PRIVATE_TOKEN
Run Code Online (Sandbox Code Playgroud)
话虽如此,您的gitlab-ce 问题 31470仍然处于开放状态:
对于带有点的文件,“从存储库获取原始文件”的 API 失败
修复正在进行中:gitlab-ce merge_request 13370,并将针对 GitLab 9.5 进行交付。
| 归档时间: |
|
| 查看次数: |
1975 次 |
| 最近记录: |