我在 kotlin Android Studio 中使用改造有这个帖子请求
@POST("/registerUser.php")
suspend fun createPost(
@Body user: User
):Response<User>
数据类 User 是
data class User(
//val id: Int?,
val username:String?,
val address: String?
)
如果我检查用户的内容
val user = User("Kilo", "Old")
Log.d("TAG", "$user")
RetrofitInstance.api.createPost(user) <----- This makes the @POST
我明白了
User(username=Kilo, address=Old)
那么我在服务器端收到了什么?它将所有内容都转换为 json 还是只是通过 用户(用户名=Kilo,地址=旧)?
当您在 POST 请求中使用 Retrofit 的 @Body 注解发送 User 对象时,Retrofit 应自动将 User 对象序列化为 JSON,然后再将其发送到服务器。在您的情况下,用户对象的序列化 JSON 表示形式将如下所示:
{
"username": "Kilo",
"address": "Old"
}
在服务器端,您应该接收此 JSON 数据作为请求正文。然后,您可以解析此 JSON 数据以访问各个字段,例如
username
和 address
。服务器应自动设置为处理传入的 JSON 数据并将其反序列化。