In Java So lesen Sie den Inhalt von GitHub-Dateien mit dem Dienstprogramm HttpURLConnection + ConvertStreamToString()

Veröffentlicht: 2017-12-30

Laden Sie Github-URL-Inhalte mit HttpURLConnection

In diesem Java-Tutorial gehen wir die Schritte zum Abrufen von GitHub-URL-Inhalten mit HttpURLConnection durch. Mit anderen Worten, unten ist eine Java-API, um einen Dateiinhalt von GitHub zu erhalten.

Jede HttpURLConnection Instanz wird verwendet, um eine einzelne Anforderung zu stellen, aber die zugrunde liegende Netzwerkverbindung zum HTTP-Server kann transparent von anderen Instanzen gemeinsam genutzt werden. getHeaderFields() Gibt eine nicht modifizierbare Map der Header-Felder zurück. Die Zuordnungsschlüssel sind Zeichenfolgen, die die Feldnamen der Antwortheader darstellen. Jeder Zuordnungswert ist eine nicht änderbare Liste von Zeichenfolgen, die die entsprechenden Feldwerte darstellt.

Jetzt fangen wir an:

  1. Erstellen Sie die Klasse CrunchifyLoadGithubContent.java
  2. Wir werden Inhalte herunterladen: https://raw.githubusercontent.com/Crunchify/wp-super-cache/master/wp-cache.php (vom Plugin: WP Super Cache Github Repo)
  3. Rufen Sie alle Header-Felder mit der getHeaderFields()-API ab. Wir brauchen dies, um herauszufinden, ob die obige URL oder eine andere URL umgeleitet wird oder nicht? Hinweis: Dies ist völlig optional. Im Falle einer HTTP 301- und HTTP 302-Weiterleitung hilft dies.
  4. Erstellen Sie API crunchifyGetStringFromStream( InputStream crunchifyStream) , um Stream in String zu konvertieren.
  5. Drucken Sie die gleiche Ausgabe an die Konsole.

HINWEIS: HTTP-Status 301 bedeutet, dass die Ressource (Seite) dauerhaft an einen neuen Speicherort verschoben wird. 302 ist, dass sich die angeforderte Ressource vorübergehend unter einem anderen URI befindet. Meistens ist 301 vs. 302 wichtig für die Indizierung in Suchmaschinen, da deren Crawler dies berücksichtigen und den PageRank bei Verwendung von 301 übertragen.

Außerdem wird davon ausgegangen, dass die GitHub-URL öffentlich sein muss.

Beim Debuggen habe ich dies als Teil des crunchifyHeader Werts erhalten. Dieses Tutorial gilt auch für das öffentliche Bitbucket-Repo.

Holen Sie sich Github-Inhalte in Java