W Javie Jak czytać zawartość pliku GitHub za pomocą narzędzia HttpURLConnection + ConvertStreamToString()

Opublikowany: 2017-12-30

Załaduj zawartość adresu URL Github za pomocą HttpURLConnection

W tym samouczku Java omówimy kroki, aby pobrać zawartość adresu URL GitHub za pomocą HttpURLConnection. Innymi słowy, poniżej znajduje się Java API do pobierania zawartości pliku z GitHub.

Każde wystąpienie HttpURLConnection jest używane do wykonania pojedynczego żądania, ale podstawowe połączenie sieciowe z serwerem HTTP może być udostępniane w sposób przezroczysty przez inne wystąpienia. getHeaderFields() Zwraca niemodyfikowalną mapę pól nagłówka. Klucze mapy to ciągi, które reprezentują nazwy pól nagłówka odpowiedzi. Każda wartość mapy jest niemodyfikowalną listą ciągów, która reprezentuje odpowiednie wartości pól.

Teraz zacznijmy:

  1. Utwórz klasę CrunchifyLoadGithubContent.java
  2. Pobieramy zawartość: https://raw.githubusercontent.com/Crunchify/wp-super-cache/master/wp-cache.php (z wtyczki: WP Super Cache Github Repo)
  3. Pobierz wszystkie pola nagłówka za pomocą funkcji API getHeaderFields(). Potrzebujemy tego, aby dowiedzieć się, czy powyższy adres URL lub jakikolwiek inny adres URL jest przekierowywany, czy nie? Uwaga: jest to całkowicie opcjonalne. Pomoże to w przypadku przekierowań HTTP 301 i HTTP 302.
  4. Utwórz API crunchifyGetStringFromStream( InputStream crunchifyStream) , aby przekonwertować Stream na String.
  5. Wydrukuj te same dane wyjściowe w konsoli.

UWAGA: HTTP Status 301 oznacza, że ​​zasób (strona) zostaje przeniesiony na stałe do nowej lokalizacji. 302 jest to, że zażądał, aby zasób przebywał tymczasowo pod innym identyfikatorem URI. Przeważnie 301 vs 302 jest ważne dla indeksowania w wyszukiwarkach, ponieważ ich roboty indeksujące biorą to pod uwagę i przenoszą pozycję strony podczas korzystania z 301.

Ponadto istnieje założenie, że – adres URL GitHub musi być publiczny.

Podczas debugowania otrzymałem to jako część wartości crunchifyHeader . Ten samouczek dotyczy również publicznego repozytorium Bitbucket.

Pobierz zawartość Github w języku Java