解决方案:使用这篇文章:http://www.designedbyaturtle.co.uk/2013/direct-upload-to-s3-with-a-little-help-from-jquery/。
编辑:我正在寻找一种直接从客户端上传大型zip文件到亚马逊S3而无需先将其上传到我的服务器的方法。
我在使用Laravel框架的小型服务器来运行我的Web应用程序。有些用户试图向我的服务器上传大文件(约300-400M),但我的服务器太弱,带宽太低,用户无法完成上传。
我希望文件能够直接上传到亚马逊S3,浏览了一下,我认为这不能通过Laravel SDK for Amazon实现。
我安装了官方SDK,并尝试按照此帖子中建议的方式进行操作:uploading posted file to amazon s3。
但是不确定如何将我的文件发送到亚马逊S3,应该在“your file string here”的位置放置什么?
替换“string of your file here”为$myfile并不能生效。
编辑:我正在寻找一种直接从客户端上传大型zip文件到亚马逊S3而无需先将其上传到我的服务器的方法。
我在使用Laravel框架的小型服务器来运行我的Web应用程序。有些用户试图向我的服务器上传大文件(约300-400M),但我的服务器太弱,带宽太低,用户无法完成上传。
我希望文件能够直接上传到亚马逊S3,浏览了一下,我认为这不能通过Laravel SDK for Amazon实现。
我安装了官方SDK,并尝试按照此帖子中建议的方式进行操作:uploading posted file to amazon s3。
但是不确定如何将我的文件发送到亚马逊S3,应该在“your file string here”的位置放置什么?
$result = $client->upload(
'BUCKET HERE',
'OBJECT KEY HERE',
'STRING OF YOUR FILE HERE',
'public-read' // public access ACL
);
我是这样获取文件的:
$myFile = Input::file('file');
替换“string of your file here”为$myfile并不能生效。
$myFile->getRealPath()
吗? - lukasgeiterInput::file()
)已经上传到您的服务器。它以临时文件的形式存储在某个位置。只需要获取该文件路径,然后获取其内容即可。 - lukasgeiter