Gitlab의 API를 통해 프로젝트 정보 및 콘텐츠에 액세스하는 방법

Gitlab은 API를 사용하여 정보에 액세스하는 다양한 방법을 제공합니다.이 문서에서는 주로 "액세스 토큰"을 사용하여 API의 정보에 액세스하는 방법을 설명합니다.

목차

1. 예비 준비

2. Java 액세스 코드의 실제 사용

3. API 매개 변수 및 설명


1. 예비 준비

gitlab에 로그인하고 개인 설정에서 다음 그림 1의 왼쪽 사이드 바에서 "액세스 토큰"을 찾은 다음 필요에 따라 그림에 정보를 입력하고 마지막으로 생성 버튼을 클릭하여 주요 정보를 가져옵니다. 그림 2에서 저장합니다.

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

 

추천

출처blog.csdn.net/Aaron_ch/article/details/112342058