4

我正在研究 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

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

4

2 回答 2

3

就像:

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

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

于 2013-08-02T04:30:17.437 回答
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),因为“-F”意味着内容类型“ multipart/form-data”标头(-H“Content-Type: multipart/form-data”)不适用于 PUT 请求。

于 2017-05-15T09:36:37.843 回答