在 Java 中如何使用 HttpURLConnection + ConvertStreamToString() 實用程序讀取 GitHub 文件內容

已發表: 2017-12-30

使用 HttpURLConnection 加載 Github URL 內容

在本 Java 教程中,我們將介紹使用 HttpURLConnection 檢索 GitHub URL 內容的步驟。 換句話說,下面是一個從 GitHub 獲取文件內容的 Java API。

每個HttpURLConnection實例用於發出單個請求,但到 HTTP 服務器的底層網絡連接可能會被其他實例透明地共享。 getHeaderFields()返回標題字段的不可修改 Map。 Map 鍵是表示響應標頭字段名稱的字符串。 每個 Map 值都是一個不可修改的字符串列表,表示相應的字段值。

現在讓我們開始吧:

  1. 創建類CrunchifyLoadGithubContent.java
  2. 我們將下載內容:https://raw.githubusercontent.com/Crunchify/wp-super-cache/master/wp-cache.php(來自插件:WP Super Cache Github Repo)
  3. 使用 getHeaderFields() API 獲取所有標題字段。 我們需要這個來確定上述 URL 或任何其他 URL 是否被重定向? 注意:這完全是可選的。 在 HTTP 301 和 HTTP 302 重定向的情況下,這將有所幫助。
  4. 創建 API crunchifyGetStringFromStream( InputStream crunchifyStream)將 Stream 轉換為 String。
  5. 將相同的輸出打印到控制台。

注意: HTTP 狀態 301 表示資源(頁面)被永久移動到新位置。 302 是他請求的資源臨時駐留在不同的 URI 下。 大多數情況下,301 vs 302 對於搜索引擎中的索引很重要,因為它們的爬蟲會考慮到這一點,並在使用 301 時轉移頁面排名。

此外,還有一個假設——GitHub URL 需要公開。

在調試時,我把它作為crunchifyHeader值的一部分。 此外,本教程也適用於 Bitbucket 公共倉庫。

用 Java 獲取 Github 內容