gitlab 的本地实例不响应位于 "/gitlab/doc/api/v4" 中的 API 文档的 REST 调用



我正在进行一个硕士论文项目,该项目使用openapi.yaml文件自动生成REST-api web服务的测试-这使我能够托管gitlab的本地实例,这样我就可以在gitlab上运行我正在开发的工具。为此,我需要包含API调用文档的.yaml文件。这样的文件可以在gitlab源代码中找到,但调用似乎不起作用。

一些呼叫工作,即:

http://localhost/api/v4/versionhttp://localhost/api/v4/usershttp://localhost/api/v4/projectshttp://localhost/api/v4/groups

all返回有意义的JSON。

问题是文档中的许多调用都不起作用(返回"404未找到"(,即:

http://localhost/api/v4/metadatahttp://localhost/api/v4/projects/{id}/access_tokens

以及文档中指定的更多调用。

问题是,很多有效的调用都没有文档记录(除了"版本"调用之外,其他所有调用(。我确实试图寻找一个替代的openapi.yaml文件,但收效甚微,我也很困惑为什么实际源代码中留下的文件不包含有意义的文档。我是不是忽略了什么?我目前正在使用poster并提供一个sudo身份验证令牌。

提前谢谢——我肯定忽略了什么!

目前,我试图通过谷歌搜索和浏览swaggerhub.com来寻找替代openapi.yaml。我查看了gitlab的文档页面,但没有找到任何我没有的东西。

遗憾的是,在撰写本文时,GitLab并没有为其所有API提供OpenAPI规范。openapi.yml中只记录了API的一小部分。有一个悬而未决的问题正在跟踪这一改进。

目前,在线API文档将成为您使用GitLab API的最佳信息来源。

至于获取404响应的问题,最常见的原因是您正在使用的凭据对您试图访问的项目/功能没有权限,或者您没有使用正确的身份验证方法。还要记住API的某些功能需要适当的许可授权。

最新更新