Body에 해당하는 클래스를 만들고 사용하시면 됩니다.
data class SoundRecogBody(
val access_key: String,
val argument: String,
val languate_code: String,
val audio: String
)
interface SoundRecogApi {
@Post("...")
fun transferSound(@Body requestBody: SoundRecogBody): Call<return_object>
}
참고로 Kotlin도 Java 마찬가지로 property는 camelCase(eg. accessKey, languageCode),
Class는 PascalCase(eg. Rerturn Object)를 사용합니다.
이건 법용적인 규칙이기 때문에 가능하면 지켜주시는 것이 좋습니다. 모던 프로그래밍에서 아주 중요하게 생각하는게 네이밍이거든요.
만약 property를 camelCase로 사용하실 경우는 Gson을 Json convert로 사용한다고 치면, @Serializename 어노테이션을 사용하여
올바로된 네이밍을 각 property에 적용하실 수 있습니다.
data class SoundRecogBody(
@SerializedName("access_key") val accessKey: String,
@SerializedName("argument") val argument: String,
@SerializedName("languate_code") val languateCode: String,
@SerializedName("audio") val audio: String
)