连接到gitlab使用gitlab的Java API

问题描述:

I'm很“虚”有关gitlab,我的问题我的声音愚蠢的...但它不用..连接到gitlab使用gitlab的Java API

我想连接到使用Java gitlab回购,这个想法只是检索存储库的“入口”列表

我似乎有一些java代码,但我不确定将发送到“连接”方法的URL是什么。

使用Web浏览器的URL是这样的https://gitlab.zzz.com/

例如: 公共静态GitlabSession连接(字符串hostUrl,字符串username,字符串密码)抛出IOException异常{ 字符串tailUrl = GitlabSession.URL; GitlabAPI api = connect(hostUrl,null,null,null); (tail,“username”).with(“password”,password) .to(tailUrl,GitlabSession.class); 返回api.dispatch()。 }

此外,我只有用户和密码..没有oauth标记..有可能连接没有令牌?

对不起我的虚拟问题,可能你们中的一些人可以提供一些提示如何开始。

谢谢 罗克

正确的方式来获得数据从Gitlab通过Gitlab API(https://docs.gitlab.com/ee/api/README.html)。根据文档,您首先使用您的用户名和密码获取令牌。此外,您使用此令牌访问其他资源

+0

谢谢,但“我的”问题开始使用https://gitlab.zzz.com/,用户名和密码连接的URL我得到这个错误javax.net.ssl.SSLHandshakeException:sun。 security.validator.ValidatorException:PKIX路径构建失败:sun.security.provider.certpath.SunCertPathBuilderException:无法找到有效的证书路径到请求的目标..在这种情况下,网址将是什么? – user6695579

+0

您应该使用Gitlab证书来加密您的请求,或者编写您的代码,例如您信任所有证书。 –

您可以使用GitLab4J(https://github.com/gmessner/gitlab4j-api)来执行此操作。它允许您连接用户名和密码,并在内部处理返回的会话令牌。

// Create a GitLabApi instance to communicate with your GitLab server 
GitLabApi gitLabApi = GitLabApi.login("http://your.gitlab.server.com", "USERNAME", "PASSWORD"); 

// Get the list of projects your account has access to 
List<Project> projects = gitLabApi.getProjectApi().getProjects(); 
+0

谢谢你,但我不再在需要这个项目的项目中,没有从“项目经理”那里得到他们如何解决这个问题的任何反馈。 – user6695579