CURL cli PUT请求 - 发送数据和文件

时间:2013-08-02 04:27:41

标签: curl command-line-interface put

我正在研究API的PUT方法,它将更新URL中ID所定义的实体。我需要发送文件和一些额外的数据用于用户身份验证(如签名和用户公钥)。我想了解如何发送文件:

curl -v -X PUT -T "file.epub" localhost:8080/api/book/?id=123

了解我如何发送数据

curl -v -X PUT --data test=abc localhost:8080/api/book/?id=123

但是如何发送文件和其他数据字段?

2 个答案:

答案 0 :(得分:2)

就像:

curl -X PUT -F file=@file.epub -F test=abc localhost:8080/api/book/?id=123

我假设您可以更改API,因此您可以使用参数上传文件,在此示例中,参数名为file

答案 1 :(得分:0)

curl -d "key1=value1" -d "key2=value2" -d @"/path/to/file" -X PUT your_url

PUT不适用于" -F" (例如curl -X PUT -F file=@file.epub -F test = abc localhost:8080 / api / book /?id = 123)as" -F"暗示内容类型" multipart / form-data"标题(-H" Content-Type:multipart / form-data"),它不适用于PUT请求。