我刚才有一个关于检查图像文件大小的问题。在图像直接上传到S3之前,你如何在PHP(服务器端),甚至通过javascript实现这一目标?另外由于个人原因,我无法使用HTML5来实现这一目标。
我知道一些解决方案,例如首先上传到我自己的服务器进行检查,然后上传到S3。但这会占用带宽大小的负载,因此它不在解决方案集中。
非常感谢。
答案 0 :(得分:0)
如果要在将文件发送到S3之前检查文件大小,并且将其直接发送到S3而不将其发送到您首先控制的服务器,则唯一的选择是检查size
属性您要发送到S3存储桶的每个File
或Blob
。在所有支持File API的浏览器中都可以实现这一点,File API几乎都是IE9以外的所有浏览器。对于旧版浏览器,您无法在客户端测试大小。
我不确定你为什么在你的问题中提到PHP,同时,你说你不想把文件发送到你先控制的服务器上。如果您想在通过某些PHP将文件发送到S3之前检查文件的大小,那么当然您必须先将文件发送到服务器,因为PHP是服务器端语言。如果您确实不想将文件发送到服务器,您当然可以通过浏览器将文件直接发送到S3,如果浏览器支持File API,请先检查大小。这通常发生在Fine Uploader中,我维护的库支持从浏览器直接上传到S3而不将文件发送到您首先控制的服务器。