为什么我使用 gitlab API 会出错?

问题描述 投票:0回答:1

我有点茫然,这是我的问题:

我必须在角度应用程序的页脚中输入项目的版本,因此我试图访问项目的标签,因为它们应该在每次推送时仅包含项目的版本(敏捷项目管理方法等),

所以我尝试遵循 gitlab 的文档: https://docs.gitlab.com/ee/api/rest/ https://docs.gitlab.com/ee/api/tags.html

现在这是我在 Windows cmd 中的输入和输出:

curl --header "PRIVATE-TOKEN: <read-api-token>" \ --url "https://gitlab.com/api/v5/projects/<id-of-the-project>/repository/tags"
curl: (3) URL rejected: Bad hostname
<html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html>

我的项目的网址是:

https://gitlab.com/poleprojets/hnde/hnde-front

我从这里得到了我的身份证:

我为我的curl请求提供的令牌摘要的图片:

因此,如果有人可以帮助我弄清楚我的请求在哪里失败了,我会很高兴或发表与此问题相关的帖子。

既然我在这里询问,如果这里有人知道我还能如何获得该版本,如果您能分享,我会很高兴。

我期待的是标签对象列表

我还尝试通过邮递员通过发出 get 请求并设置标头来测试,但这里没有太多结果

编辑:仔细查看后我发现示例使用的是 v4 而不是 v5,但它并没有解决问题

curl --header "PRIVATE-TOKEN: <read-api-token>" \   --url "https://gitlab.com/api/v4/projects/<id>/repository/tags"
curl: (3) URL rejected: Bad hostname
{"message":"403 Forbidden"}
gitlab tags gitlab-api
1个回答
0
投票

正确的 API 版本是

v4
。由于 API 版本不存在,您将被重定向。现在您得到
403 Forbidden
,这意味着用户或令牌权限出现问题。
read_api
令牌应该能让你满意(我检查了我的 Gitlab 实例,它有效)。可能是用户的 scope 出现问题:尝试设置(至少可以尝试)
maintainer
角色并尝试再次发出 HTTP 请求。

同样,下面的命令适用于我的 GitLab:

curl --header 'PRIVATE-TOKEN: glpat-xxxxxxxxxx' --url https://gitlab.com/api/v4/projects/150/repository/tags
© www.soinside.com 2019 - 2024. All rights reserved.