saritasa/laravel-s3-uploads

此包已被弃用且不再维护。未建议替代包。

laravel-s3-uploads

1.2.0 2021-02-02 13:40 UTC

This package is auto-updated.

Last update: 2024-09-05 13:48:36 UTC


README

PHP Unit PHP CodeSniffer CodeCov Release PHPv Downloads

Laravel API 用于 S3 上传

使用方法

安装 saritasa/laravel-s3-uploads

$ composer require saritasa/laravel-s3-uploads

根据 Laravel 手册 配置 Storage::cloud() 磁盘以支持 AWS S3

此包暴露了 POST <API_PREFIX>/uploads/tmp 路由,使用 Dingo/Api 路由器。它接受以 application/json 格式的请求

{
  "fileName": "image.jpg"
}

并返回包含 S3 预签名 URL 的响应

{
  "uploadUrl": "https://my-bucket.s3-us-west.amazonaws.com/tmp/1341234uoi123lhkj1.jpg?<WRITE_SIGNATURE=...>",
  "validUntil": "2017-04-12T23:20:50.52Z",
  "fileUrl": "https://my-bucket.s3-us-west.amazonaws.com/tmp/1341234uoi123lhkj1.jpg?<READ_SIGNATURE=...>"
}
  • uploadUrl 可用于前端 PUT <uploadUrl> 上传到 S3。
  • fileUrl 是预签名 URL,可用于在上传后在前端读取该文件(假设您的 S3 存储桶对新文件默认策略为设置 'private' ACL)。

配置

您可以使用 config/media.php 修改默认上传路径或预签名 URL 的过期超时。

贡献

查看 CONTRIBUTINGCode of Conduct,如果您想做出贡献(pull request)或只是在您自己的环境中构建和测试项目。

资源