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

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

目录

1、前期准备

2、Java访问代码使用实战

3、API参数和解释


1、前期准备

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

2、代码实战

pom文件包为

<dependency>
     <groupId>org.gitlab</groupId>
     <artifactId>java-gitlab-api</artifactId>
     <version>4.1.1</version>
</dependency>
public static void main(String[] args) {
        GitlabAPI gitlabAPI = GitlabAPI.connect("url地址", "刚刚获得的accessToken");
        try {
            GitlabProject gitlabProject = gitlabAPI.getProject("你的namespace", "你的projectName");
            List<GitlabBranch> gitlabBranchList = gitlabAPI.getBranches(gitlabProject);
            for(int i = 0;i<gitlabBranchList.size();i++){
                System.out.println(gitlabBranchList.get(i).getName());
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
}

最终输出的结果为:

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");

 

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值