検証環境
この記事の内容は、以下の環境で検証しました。
- Intellij IDEA ULTIMATE 2017.2
- Kotlin 1.1.61
- Fuel 1.12.0
- Java 1.8
- Gradle Projectで作成
はじめに
下記の記事では、Fuelを利用したHTTP通信を説明しました。今回は、リクエストパラメータを送信する方法について説明していきます。
目標
Fuelライブラリーを利用したHTTP通信で、リクエストパラメータを送信する実装方法を理解する。
実装
準備
Fuelを使用するため、Gradleに以下を追記します。
repositories {
jcenter()
}
dependencies {
compile 'com.github.kittinunf.fuel:fuel:1.12.0'
}
実装例
実際にFuelでパラメータを付与したHTTP通信のコード例です。
package jp.co.casareal.fuelparam
import com.github.kittinunf.fuel.httpGet
import com.github.kittinunf.fuel.httpPost
fun main(args: Array<String>) {
// GETによるHTTP通信
"http://localhost:8080/param".httpGet(listOf("q" to "casareal")).response { request, response, result ->
}
// POSTによるHTTP通信
"http://localhost:8080/param".httpPost(listOf("bbb" to "ccc")).response { request, response, result ->
}
}
解説
リクエストパラメータを付与するには、下記の形式で記述します。
"URLを記述".httpXXX(listOf("パラメータ名" to "値")).response関数 or responseString関数
- 付与するリクエストパラメータは、httpXXXメソッドの引数にPairのリスト形式で渡します。
- 付与したリクエストパラメータの値は、エンコードされたうえでサーバに送信されます。
- httpPost関数で送信すると、送信するデータはHTTPリクエストのボディ部に格納されます。
まとめ
Fuelだとリクエストパラメータの付与はシンプルに実装できます。
また、リクエストパラメータを付与してHTTP通信する方法は、この記事に乗せている関数以外にも存在するの本家のサイトで確認してください。