如何将文件上传到Restful API Kotlin

时间:2019-03-10 18:19:41

标签: file http kotlin okhttp

嗨,我只是想知道在尝试通过kotlin上传此zip文件时是否做错了什么。我的rest API已经可以用于上传zip文件(我检查过curl)。但是,我不能让kotlin上传文件。似乎将.zip文件重命名为“文件”,然后文件丢失了内容。

fun uploadFile(extension: String, f: File){
    print(f.path)
    val response = khttp.post(url = this.url + extension,
           files = listOf(FileLike("file", File(f.path)))
    )
    print(response.text)
}

我也尝试通过传入File(f.path)所在的文件对象本身来进行尝试。 我似乎什么都没做。我正在运行kotlin,服务器正在ubuntu上运行。我不知道这是否会导致目录问题。

感谢您的帮助!谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用简单的kohttp文件上传DSL(版本0.8.0起)

val response = upload {
    url( your destination url )
    file( file or file uri )
}

或扩展功能

val response = file.upload(目标字符串或url)