hassan / laravel-s3-browser-based-uploads

直接从浏览器上传文件到AWS S3

1.0.1 2020-03-12 23:31 UTC

This package is auto-updated.

Last update: 2024-09-20 11:53:42 UTC


README

Latest Version on Packagist Build Status Total Downloads License

直接从浏览器上传文件到AWS S3

安装

  • 1 通过composer安装包
composer require hassan/laravel-s3-browser-based-uploads
  • 2 发布包的配置文件。
php artisan vendor:publish --provider="Hassan\S3BrowserBasedUploads\ServiceProvider" --tag=config
  • 3 添加您的AWS设置
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=
AWS_BUCKET=

使用方法

use Hassan\S3BrowserBasedUploads\Facades\S3BrowserBasedUploads;

S3BrowserBasedUploads::getEndpointUrl()

S3BrowserBasedUploads::getFields()

// with another connection
S3BrowserBasedUploads::connection('another')->getFields();

示例

const formData = new FormData();

@foreach(S3BrowserBasedUploads::getFields() as $key => $value)
    formData.append('{{ $key }}', '{{ $value }}');
@endforeach

formData.append('Content-Type', file.type);
formData.append('file', file, file.name);

const request = new XMLHttpRequest();
request.open('POST', "{{ S3BrowserBasedUploads::getEndpointUrl() }}");
request.send(formData);

查看使用Filepond的演示

或使用凭据路由

// use Hassan\S3BrowserBasedUploads\S3BrowserBasedUploads;

public function boot()
{
    S3BrowserBasedUploads::routes();
}

安全

如果您发现任何与安全相关的问题,请通过电子邮件 hello@hassan-ali.me 而不是使用问题跟踪器来报告。