嗨,我有一个curl命令来发布数据。
curl -v -X POST "http://localhost:8080/api/files" -H "Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJnbG9iYWxhZG1pbkBsb2NhbGhvc3QiLCJhdXRoIjoiUk9MRV9HTE9CQUxfURNSU4iLCJleHAiOjE1NTg2MjQ2NjF9.XV8Ibcqoh7a6FWN6BF89rH4abyraaS86jsP04Y5vuNrH-rnJ3Se0T7ogA0t7oXXzrVsvZUpPgkm5pGHotd6a_g" -H "accept: */*" -H "Content-Type: multipart/form-data1" -F "file=@feet.wbmp;type=image/jpeg"
如果我不带; type = image / jpeg
使用此命令有什么区别?curl -v -X POST "http://localhost:8080/api/files" -H "Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJnbG9iYWxhZG1pbkBsb2NhbGhvc3QiLCJhdXRoIjoiUk9MRV9HTE9CQUxfURNSU4iLCJleHAiOjE1NTg2MjQ2NjF9.XV8Ibcqoh7a6FWN6BF89rH4abyraaS86jsP04Y5vuNrH-rnJ3Se0T7ogA0t7oXXzrVsvZUpPgkm5pGHotd6a_g" -H "accept: */*" -H "Content-Type: multipart/form-data1" -F "file=@feet.wbmp"
答案 0 :(得分:0)
通过type
选项,您可以在多部分请求中指定给定部分的Content-Type
。
-F
选项(以及更为冗长的--form
)模仿用户已按下“提交”按钮的填写表单。它将使用带有Content-Type
值的multipart/form-data
标头使POST
数据卷曲。
在多部分请求中,每个部分都可以有一个可选的Content-Type
标头,如RFC 7578中所述:
4.4. Content-Type Header Field for Each Part
每个部分都可以有一个(可选)
Content-Type
头字段,默认为text/plain
。如果要发送文件的内容,则应使用适当的媒体类型(如果已知)或application/octet-stream
标记文件数据。
虽然@
使文件作为文件上传形式附加在表单中,但是type
参数允许您指定给定零件的Content-Type
。