参考文章:
使用cURL POST上传文件
CURL模拟表单post提交及相关常用参数的使用(包括提交表单同时上传文件
- Second Type:
手写curl文件上传:
使用curl 上传文件,multipart/form-data
- 不使用-F,curl内置multipart/form-data功能;
- 文件内容与真实数据无关,用abc代替数据,依然可以上传成功,这里是文件的二进制内容;
- name 为服务端获取文件的字段;
- 换行和—的数量需要一致;
- -H指定头部信息,上传文件时在头部的Content-Type指定格式和分隔符;
- boundary参数为内容分割,“-”的数量比后面数据里面少2;
- –data 指定post的数据信息,图片内容在data内;
- 需要注意在data最后还有两个“–”。
curl -H "Content-Type: multipart/form-data; boundary=----------WebKitFormBoundarykwAk3YkABYxtSoqv"
Content-Disposition: form-data; name="file"; filename="selfi.jpg"
Content-Type: image/png
abc
" http://127.0.0.1:8080/picture
下面给一个shell,不过没有成功,有能力的可以看看:
total=$(cat /mnt/shared/Image/1.jpg)
curl -H "Content-Type: multipart/form-data; boundary=----------WebKitFormBoundarykwAk3YkABYxtSoqv"
Content-Disposition: form-data; name="pic"; filename="1.jpg"
Content-Type: image/jpeg
'"$total"'
' http://127.0.0.1:8080/picture
参考文章:
使用curl 上传文件,multipart/form-data