如何通过Gitlab的API访问项目信息和内容

Gitlab提供了很多种方式来使用API访问其信息,本文将主要讲解如何使用其中的“Access Tokens”来访问其API里的信息。

目录

1、前期准备

2、Java访问代码使用实战

3、API参数和解释


1、前期准备

登录gitlab,找到个人设置里的如下图一中的左边侧边栏中的“Access Tokens”,然后根据自身的需要填写图中的信息,最终点击create按钮得到图二中的关键信息,保存下来。

如何通过Gitlab的API访问项目信息和内容_第1张图片

如何通过Gitlab的API访问项目信息和内容_第2张图片

2、代码实战

pom文件包为


     org.gitlab
     java-gitlab-api
     4.1.1
public static void main(String[] args) {
        GitlabAPI gitlabAPI = GitlabAPI.connect("url地址", "刚刚获得的accessToken");
        try {
            GitlabProject gitlabProject = gitlabAPI.getProject("你的namespace", "你的projectName");
            List gitlabBranchList = gitlabAPI.getBranches(gitlabProject);
            for(int i = 0;i

最终输出的结果为:

如何通过Gitlab的API访问项目信息和内容_第3张图片

3、GitlabAPI源代码关键方法解析

查看源代码,其中有大量的get方法,可以通过其获取到你想要的信息内容。举例几个关键常用的

getRepositoryFile()

首先看源代码,很明确清晰的可以看到,这个方法是用来获取项目的所有文件,通过传入项目对象,路径,分支名三个参数获取整个项目的文件对象

public GitlabRepositoryFile getRepositoryFile(GitlabProject project, String path, String ref) throws IOException {
        Query query = new Query()
                .append("ref", ref);

        String tailUrl = GitlabProject.URL + "/" + project.getId() + "/repository/files/" + sanitizePath(path) + query.toString();
        return retrieve().to(tailUrl, GitlabRepositoryFile.class);
    }

获取到文件对象之后,通过GitlabRepositoryFile实体类中的getContent()方法获取里面的内容,但要想最终实现代码的查看,还必须做如下的解密算法。

new String(decoder.decode(gitlabRepositoryFile.getContent()), "UTF-8");

 

你可能感兴趣的:(Gitlab,Java,gitlab,大数据)