我想知道如何获取github企业版(私有)中存在的所有存储库的列表。我无法确定我应该如何使用个人访问令牌通过Java代码获得身份验证。
我已经尝试使用公共存储库,并且能够使用其中的所有内容,但是我无法在企业github上做到这一点。
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Scanner;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;
import org.apache.commons.codec.binary.Base64;
public class httpget {
public static void main(String args[]) throws IOException, ParseException,JSONException
{
URL url=new URL("https://github---.com/api/v3/...");
HttpURLConnection conn=(HttpURLConnection)url.openConnection();
String token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
String authString="Basic"+Base64.encodeBase64(token.getBytes());
conn.setRequestProperty("Authorization", authString);
conn.connect();
String inline="";
Scanner sc = new Scanner(url.openStream());
while(sc.hasNext())
{
inline+=sc.nextLine();
}
sc.close();
System.out.println(inline);
}
}
答案 0 :(得分:0)
在Java中做到这一点的最好方法是使用可用的Java API之一,而无需进行剩余身份验证。 github页面列出了所有API:
https://developer.github.com/v3/libraries/
您有2个Java有趣的API:
egit-github:https://github.com/eclipse/egit-github/tree/master/org.eclipse.egit.github.core
和
kohsuke:http://github-api.kohsuke.org/
egit-github似乎很容易使用...