curl上传文件的用法

 收藏

爱国者

 

  • 发表于 4年前 
  • 阅读 17000 
  • 收藏 5 
  • 点赞 1 
  • 评论 1

聚焦虚拟化和OpenStack、容器、大数据等开源技术的年度大趴!>>> »  

用curl下载网页估计大家都会,但是模拟 multipart/form-data 形式的 form 上传文件则稍稍复杂些。命令行如下:

 

curl  -F "filename=@/home/test/file.tar.gz" http://localhost/action.php

如果使用了-F参数,curl就会以 multipart/form-data 的方式发送POST请求。-F参数以name=value的方式来指定参数内容,如果值是一个文件,则需要以name=@file的方式来指定。

如果通过代理,上面的命令有可能会被代理拒绝,这时需要指定上传文件的MIME类型

curl -x myproxy.com:1080 -F "filename=@/home/test/file.tar.gz;type=application/octet-stream" http://localhost/action.php

 

另外,如果不上传文件,则可以使用 -d 参数,这时curl会以application/x-www-url-encoded 方式发送 POST 请求。

 

url -d "action=del&name=archer" -d "id=12" http://localhost/action.php

 

原文地址:http://tech.idv2.com/2006/12/08/upload-with-curl/

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐