kotlin:okhttp
差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
| kotlin:okhttp [2023/04/07 15:03] – [JSON形式のリクエストボディーを作成する場合] mikoto | kotlin:okhttp [2023/04/27 15:03] (現在) – mikoto | ||
|---|---|---|---|
| 行 76: | 行 76: | ||
| ==== テキスト形式のリクエストボディーを作成する場合 ==== | ==== テキスト形式のリクエストボディーを作成する場合 ==== | ||
| <code kotlin> | <code kotlin> | ||
| + | import okhttp3.MediaType.Companion.toMediaType | ||
| + | import okhttp3.OkHttpClient | ||
| + | import okhttp3.Request | ||
| + | import okhttp3.RequestBody.Companion.toRequestBody | ||
| + | fun func() { | ||
| + | val text = "This is a sample." | ||
| + | val media_type = " | ||
| + | val request_body = text.toRequestBody(media_type) | ||
| + | val request = Request.Builder() | ||
| + | .url(url) | ||
| + | .post(request_body) | ||
| + | .build() | ||
| + | | ||
| + | val response = OkHttpClient().newCall(request).execute() | ||
| + | } | ||
| </ | </ | ||
| 行 116: | 行 131: | ||
| call.timeout().timeout(60, | call.timeout().timeout(60, | ||
| val response = call.execute() | val response = call.execute() | ||
| + | </ | ||
| + | |||
| + | ===== エラー処理 ===== | ||
| + | ==== レスポンスボディーがnullの場合の処理 ==== | ||
| + | <code kotlin> | ||
| + | val response = client.newCall(request).execute() | ||
| + | val responseBody = response? | ||
| + | |||
| + | if (response.isSuccessful && responseBody != null) { | ||
| + | // レスポンスボディを処理する | ||
| + | } else { | ||
| + | // エラー処理 | ||
| + | } | ||
| </ | </ | ||
kotlin/okhttp.1680847419.txt.gz · 最終更新: 2023/04/07 15:03 by mikoto