使用cURL将HTML页面中的文件上传到服务器

我试图创建一个网页,你可以在其中上传一个 zip 文件,然后服务器(嵌入式 linux)将下载并保存它。我的 HTML 页面大致如下:

<form method="POST" enctype='multipart/form-data' action="upload.cgi">
 <input type=file name=upload>
 <input type=submit name=press value="OK">
</form>

这会创建上传和提交按钮。我遇到的问题是后端脚本。我可以使用 lua 和 shell(请不要给我 PHP 示例)。我想使用 cURL 来实现这个,但我不确定。我猜我需要 upload.cgi,像这样:

curl --form upload=@localfilename --form press=OK

我传入 localfilename,它是正在上传的文件的名称?

我的问题是:

  1. 在给定我的资源情况下,这是上传一个(30MB)zip 文件使用 HTML 页面的最佳/最快方法吗?
  2. 如果是这样,在语法正确时,我给出的示例是否正确?
点赞
用户668125
用户668125

根据http://curl.haxx.se/docs/manpage.html (man 1 curl),你需要执行以下命令:

curl --data-urlencode upload@localfilename --data-urlencode press=OK http://url/to/upload.cgi
2014-05-22 21:16:41