通过html表单和HTTP Post将文件/密钥发送到Amazon S3非常简单且有效。
但我想通过HTTP POST和单个html表单将文件发送到几个与S3兼容的站点。
我该怎么做?
据我所知,HTTP POST只能指向一个目标位置。
我希望将文件发送到第一个与S3兼容的站点(服务器),然后发送到第二个站点而不是第三个站点,依此类推,而不需要用户进行交互。
这可能吗?
非常感谢您的帮助。
答案 0 :(得分:2)
你可以使用闪光灯为你做这件事(更容易)。
或者我认为你可以使用隐形框架和javascript。定位隐藏帧上的上传并更改操作。下面的示例将在一个服务器之后上传相同的文件。
以下是代码:
<!DOCTYPE html>
<html>
<head>
<title>Sample</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
$('#button1').click(function(){
$('#frame1').load(function(){
$('#form1')
.attr('action', 'http://server2/')
.attr('target', 'frame2')
.submit();
});
$('#form1')
.attr('action', 'http://server1/')
.attr('target', 'frame1')
.submit();
return true;
});
});
</script>
<style type="text/css"></style>
</head>
<body>
<form id="form1" method="POST" enctype="multipart/form-data" action="http://cgi-lib.berkeley.edu/ex/fup.cgi">
File to upload: <input type="file" name="upfile" /><br>
Notes about the file: <input type="text" name="note" /><br>
</form>
<button id="button1">Multiple upload</button>
<br />
<iframe id="frame1" name="frame1"></iframe>
<iframe id="frame2" name="frame2"></iframe>
</body>
</html>
答案 1 :(得分:0)
使用纯HTML和浏览器无法做到这一点。