[英]How to upload large files to Amazon S3 from Laravel?
我希望用戶上傳大文件(如高清視頻和大 PDF),並使用這行代碼上傳文件。 Storage::disk('s3')->putFile('uploads', new File($request->file('file_upload')));
問題是即使我的網速很好,上傳文件也需要很長時間。 我該怎么做才能更快地上傳文件?
該過程實際上涉及兩個網絡調用。
減少延遲的唯一方法是使用客戶端 SDK 安全地將文件從客戶端直接上傳到 s3。 這樣,文件將直接存儲在 S3 存儲桶中。
通過 AWS S3 客戶端 SDK 將文件上傳到 s3 后,您可以將文件的屬性與下載的 URL 一起發布到 Laravel 並將其更新到 DB。
這種方法的優點是它允許您在客戶端顯示實際的文件上傳進度。
這可以通過 AWS amplify 庫完成,該庫提供與 S3 的出色集成: https://docs.amplify.aws/start
其他選項:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.