要避免URL编码的"Fuel HTTP"包含代码示例,你可以使用@UrlEncoded
注解来标记你不想编码的请求参数。
这是一个使用"Fuel HTTP"库发送带有未编码参数的POST请求的示例代码:
import com.github.kittinunf.fuel.httpPost
import com.github.kittinunf.fuel.core.extensions.jsonBody
import com.github.kittinunf.result.Result
fun main() {
val url = "https://example.com/api"
val params = mapOf("param1" to "value1", "param2" to "value2")
val request = url.httpPost()
.jsonBody(params) // 设置请求体为JSON格式,使用未编码的参数
val (_, response, result) = request.responseString()
when (result) {
is Result.Success -> {
val data = result.get()
println("请求成功:$data")
}
is Result.Failure -> {
val error = result.error
println("请求失败:$error")
}
}
}
在上面的示例代码中,我们使用jsonBody
方法将参数设置为JSON格式,并且这些参数不会被自动编码。这样,你可以确保参数不会被URL编码。