Retrofit

作者: ivotai | 来源:发表于2020-03-27 08:20 被阅读0次

学习 Retrofit 的方式

  1. https://square.github.io/retrofit/
  2. 看注解源码中的说明。

各种 Post 请求

Form表单、四种常见的POST请求提交数据方式、MIME【转】

interface SimpleApi {

    // 表单键值对
    @FormUrlEncoded
    @POST
    fun a(@Field("key") value: String): Call<Any>

    // json 字符串
    @POST
    fun b(@Body any: Any): Call<Any>

    // 多文件上传及其他
    @Multipart
    @POST
    fun c(@Part part: MultipartBody.Part, @Part("description") description: RequestBody): Call<Any>

} 

拼 Part

import okhttp3.MediaType.Companion.toMediaType
import okhttp3.RequestBody.Companion.asRequestBody

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        ...
        val file = File("1.png")
        val mediaType = "image/png"
        val requestBody = file.asRequestBody(mediaType.toMediaType())
        val part = MultipartBody.Part.createFormData("", "", requestBody)
    }

}

相关文章

网友评论

      本文标题:Retrofit

      本文链接:https://www.haomeiwen.com/subject/nbpkuhtx.html