カテゴリ: Kotlin 更新日: 2026/01/07

KotlinのOkHttpの基本!HTTPクライアントの使い方を解説

KotlinのOkHttpの基本!HTTPクライアントの使い方を解説
KotlinのOkHttpの基本!HTTPクライアントの使い方を解説

先生と生徒の会話形式で理解しよう

生徒

「KotlinでWebサイトからデータを取ってきたりするには、どうすればいいんですか?」

先生

「そのときに便利なのが、OkHttpというHTTPクライアントライブラリです。Kotlinでも簡単に使えますよ。」

生徒

「HTTPクライアントって何ですか?難しそう……」

先生

「簡単にいうと、Webの住所(URL)にアクセスして、情報を取りに行く郵便屋さんのようなものです。まずは基本的な使い方から見ていきましょう!」

1. OkHttpとは?KotlinでのHTTP通信に便利なライブラリ

1. OkHttpとは?KotlinでのHTTP通信に便利なライブラリ
1. OkHttpとは?KotlinでのHTTP通信に便利なライブラリ

KotlinでWeb APIと連携するには、HTTPリクエスト(ネット上のデータを取得・送信する処理)を行う必要があります。そんなときに役立つのが、OkHttpというライブラリです。

OkHttpは、シンプルで高速なHTTPクライアントで、KotlinやJavaでよく使われています。無料で使えて、設定も簡単なので、初心者にもおすすめです。

2. HTTPクライアントって何?わかりやすく例えると?

2. HTTPクライアントって何?わかりやすく例えると?
2. HTTPクライアントって何?わかりやすく例えると?

HTTPクライアントとは、「インターネット上のお店に行って、データという商品をもらってくる配達人」のような存在です。

たとえば、「天気予報のデータをください」とお願いして、その結果を受け取るようなイメージです。URL(インターネット上の住所)にアクセスして、情報をもらってくるのがHTTPクライアントの役割です。

3. OkHttpの使い方(GETリクエスト編)

3. OkHttpの使い方(GETリクエスト編)
3. OkHttpの使い方(GETリクエスト編)

WebサイトやAPIからデータを取得する方法として「GETリクエスト」があります。これは「情報をください」と相手に伝える通信のことです。

以下は、KotlinでOkHttpを使ってGETリクエストを送る簡単なサンプルコードです。


import okhttp3.OkHttpClient
import okhttp3.Request

fun main() {
    val client = OkHttpClient()

    val request = Request.Builder()
        .url("https://example.com")
        .build()

    val response = client.newCall(request).execute()

    println(response.body?.string())
}

urlにアクセスした結果が画面に表示されます。

4. GETリクエストの結果はどう表示される?

4. GETリクエストの結果はどう表示される?
4. GETリクエストの結果はどう表示される?

上記のプログラムを実行すると、指定したWebサイトのHTMLやJSONデータが表示されます。たとえば、以下のように表示されます。


<html>
  <head><title>Example Domain</title></head>
  <body>...</body>
</html>

これが、Webから取得した「中身」です。HTMLという形式で書かれており、Webページの見た目や構造を表す言語です。

5. OkHttpの依存関係をGradleに追加する方法

5. OkHttpの依存関係をGradleに追加する方法
5. OkHttpの依存関係をGradleに追加する方法

KotlinでOkHttpを使うには、まずプロジェクトの設定ファイルにライブラリを追加する必要があります。Gradle(グレードル)というツールを使って、依存関係を管理します。


dependencies {
    implementation("com.squareup.okhttp3:okhttp:4.12.0")
}

このように書くことで、OkHttpがプロジェクト内で使えるようになります。

6. 非同期通信って何?初心者向けに解説

6. 非同期通信って何?初心者向けに解説
6. 非同期通信って何?初心者向けに解説

OkHttpでは、ネットワークの処理に「非同期通信」も使えます。これは、「データを取りに行ってる間に他の作業をする」というイメージです。

たとえば、料理を注文してから待っている間に、別の作業(飲み物を取りに行くなど)をするようなものです。アプリの動作を止めずに、裏で通信できるので、便利です。

7. 非同期でリクエストを送る方法(enqueue)

7. 非同期でリクエストを送る方法(enqueue)
7. 非同期でリクエストを送る方法(enqueue)

OkHttpでは、非同期で通信するにはenqueueメソッドを使います。以下のように記述します。


import okhttp3.*
import java.io.IOException

fun main() {
    val client = OkHttpClient()
    val request = Request.Builder()
        .url("https://example.com")
        .build()

    client.newCall(request).enqueue(object : Callback {
        override fun onFailure(call: Call, e: IOException) {
            println("通信に失敗しました: ${e.message}")
        }

        override fun onResponse(call: Call, response: Response) {
            println("取得したデータ: ${response.body?.string()}")
        }
    })
}

このように書くと、データ取得中もアプリは止まらずに動作できます。

8. エラーハンドリングも忘れずに!

8. エラーハンドリングも忘れずに!
8. エラーハンドリングも忘れずに!

ネットワーク通信では、うまく接続できなかったり、サーバー側のエラーが起きることもあります。onFailureで失敗を処理し、onResponseで成功時の処理を書きましょう。

「エラーハンドリング」とは、失敗したときの対処法を書くことです。初心者のうちはエラーが出ると焦りますが、事前にエラーを想定してコードを書くのが大切です。

Kotlinを基礎からしっかり学びたい人や、 Java経験を活かしてモダンな言語にステップアップしたい人には、 定番の入門書がこちらです。

基礎からわかるKotlinをAmazonで見る

※ Amazon広告リンク

9. KotlinでのAPI連携はOkHttpから始めよう!

9. KotlinでのAPI連携はOkHttpから始めよう!
9. KotlinでのAPI連携はOkHttpから始めよう!

今回は、KotlinでOkHttpを使ってWebサイトやAPIにアクセスする方法を解説しました。

・GETリクエストでデータを取得する方法
・非同期処理でスムーズなアプリ体験を実現
・エラーハンドリングで失敗に備える

最初は難しそうに思えるかもしれませんが、OkHttpはKotlinでWebとやり取りする基本中の基本です。ぜひ実際に手を動かしてみてください!

関連セミナーのご案内

【未経験OK】Kotlinで始めるプログラミング入門|ゼロから「動く喜び」を体験する60分

「プログラミングを始めたい」を形にする。最新言語Kotlinで楽しむ、ものづくりの第一歩。

本講座は、プログラミング経験が全くない方のためのエントリー講座です。「コードを書くってどういうこと?」という基本から、世界中で使われている最新言語Kotlin(コトリン)を使って、実際にプログラムを動かすまでを体験します。難しい理屈よりも、まずは「自分の手で動かす楽しさ」を最短距離で実感していただきます。

具体的な体験内容と環境

【つくるもの】
簡単な言葉を入力すると自動で返答してくれる「対話型ミニプログラム」や、計算を自動化する「便利ツール」をゼロから作成します。黒い画面に自分の書いた文字が表示される瞬間は、最高の感動体験です。

【開発環境】
プロのエンジニアが実際に使っている開発ツールIntelliJ IDEA(インテリジェイ)をインストールします。ボタン一つで日本語化し、初心者でも迷わず操作できる「魔法の設定」を一緒に行います。

この60分で得られる3つの体験

1. 自分のパソコンが「開発基地」に

プロと同じ道具を揃えることで、明日から一人でもプログラミングを続けられる環境が整います。

2. プログラミングの「仕組み」がスッキリ

「変数」や「型」といった難しい言葉も、身近な例え話で解説。モヤモヤをゼロにします。

3. 「読みやすい」から「直せる」へ

Kotlinは英語に近くて読みやすいのが特徴。自分でコードを読んで、間違いを見つけるコツも伝授します。

※本講座は、パソコン操作が不安な方でも安心して受講いただける完全マンツーマンです。あなたのペースに合わせて、一つずつ丁寧に進めていきます。

セミナー画像

Kotlinで始めるプログラミング入門|ゼロから「動く喜び」を体験

関連記事:
カテゴリの一覧へ
新着記事
New1
Go言語
Go言語のスコープとは?ローカル変数・グローバル変数の違いと使い分け
New2
Go言語
Go言語の構文ルールまとめ!インデント・セミコロンなど最初に知っておくポイント
New3
Kotlin
KotlinのwithTimeoutでタイムアウト処理を設定しよう!初心者にもわかる非同期の安全な止め方
New4
Go言語
Go言語のマップの順序保証がない理由と扱い方の工夫をやさしく解説!初心者でもわかる基本知識
人気記事
No.1
Java&Spring記事人気No1
Swift
Swift Playgroundの使い方を完全解説!初心者に最適な学習環境の始め方
No.2
Java&Spring記事人気No2
Go言語
Swiftの配列(Array)の使い方を完全ガイド!初心者でもわかるデータのまとめ方
No.3
Java&Spring記事人気No3
Kotlin
Kotlinのsettings.gradleファイルを完全解説!初心者でもわかるプロジェクト設定の基本
No.4
Java&Spring記事人気No4
Go言語
Go言語でREST APIを作る設計と実装パターン完全ガイド!初心者でもわかるAPI開発
No.5
Java&Spring記事人気No5
Kotlin
Android Studioのインストール手順と初期設定を初心者向けに完全解説!
No.6
Java&Spring記事人気No6
Go言語
Go言語のSQLインジェクション対策を完全解説!初心者でも安全なデータベース操作がわかる
No.7
Java&Spring記事人気No7
Go言語
Go言語のトランザクション処理を完全解説!Begin・Commit・Rollbackを初心者向けにやさしく理解
No.8
Java&Spring記事人気No8
Go言語
Swiftの変数と定数の使い方を完全ガイド!初心者でもわかる基本文法