首页 > 解决方案 > 使用项目部署令牌访问gitlab api

问题描述

我想通过gitlab API从应用程序中读取gitlab中存在的一个项目中的一些文件。我通过在项目中创建deploy token

settings -> Repository -> Deploy Tokens. 

然后我尝试

/api/v4/projects/MY_ID?private_token=MY_TOKEN

/api/v4/projects/MY_ID?access_token=MY_TOKEN

,并且它们都不起作用-两者都返回401

这不能deploy token用作身份验证令牌,我必须创建一个新用户来实现它吗?

但是文档描述了这deploy token是用于访问该项目的,还是?

标签: gitlabgitlab-api

解决方案


您需要使用个人访问令牌而不是部署令牌。这些创建于:

profile -> settings -> access tokens

在 API 请求中,您传递的 ID 是Project ID,例如:

curl "https://your-host/api/v4/projects/<project-id>?private_token=<your-private-token>"

要查找项目 ID,请转到项目页面或查询您有权访问的所有项目,例如:

curl "https://your-host/api/v4/projects?private_token=<your-private-token>"

干杯

小号


推荐阅读