Jak przesłać pliki wideo do zasobnika S3 za pomocą React JS. Obecnie pracuję nad aplikacją React JS i muszę wgrać pliki wideo do wiadra S3. Dużo szukałem, ale mogę znaleźć tylko część dotyczącą przesyłania „Obrazu”. Ale chciałbym wiedzieć, jak wgrać pliki wideo do wiadra S3 (skuteczny sposób). Jeśli ktoś o tym wie, proszę podziel się swoimi odpowiedziami.

Z góry dziękuję.

3
Arun 4 listopad 2018, 00:43
Możesz sprawdzić zeolearn.com/magazine/ przesyłanie-plików-do-aws-s3-using-nodejs. Pamiętaj, że do zasobników s3 możesz przesyłać praktycznie każdy typ pliku, o ile zezwalają na to zasady przesyłania s3.
 – 
Rico Chen
4 listopad 2018, 01:14

2 odpowiedzi

Najlepsza odpowiedź

Technicznie rzecz biorąc, przesyłanie wideo jest jak przesyłanie dowolnego pliku binarnego (np. Obraz, plik audio ... itp.). Jednak ponieważ te pliki wideo mogą szybko stać się zbyt duże, sugeruję skorzystanie z co najmniej jednego z poniższych:

  • Przesyłanie wieloczęściowe: wysoce zalecane, jeśli rozmiar pliku przekracza 100 MB. Pomoże Ci osiągnąć wyższą przepustowość, możliwość wznawiania przerwanego przesyłania oraz wstrzymywania i wznawiania przesyłania. Więcej informacji znajdziesz tutaj.

  • Przyspieszenie transferu S3: korzystając z CDN, użytkownicy będą przesyłać dane do lokalizacji geograficznie bliższej, co również przyspieszy ich działanie. Więcej informacji znajdziesz tutaj.

Kilka przydatnych bibliotek do kasy: EvaporateJS, react-s3-uploader-multipart

2
mostafazh 4 listopad 2018, 14:55

Użyj pakietu węzłów multer-s3 tak, jak był używany w tym samouczku: https://www. youtube.com/watch?v=ASuU4km3VHE&t=3s

I dodaj contentType: multerS3.AUTO_CONTENT_TYPE do obiektu multer w ten sposób.

var upload = multer({
  storage: multerS3({
    s3: s3,
    bucket: 'some-bucket',
    contentType: multerS3.AUTO_CONTENT_TYPE,
    metadata: function (req, file, cb) {
      cb(null, {fieldName: file.fieldname});
    },
    key: function (req, file, cb) {
      cb(null, Date.now().toString())
    }
  })
})

Spowoduje to ustawienie metadanych Content-type na wideo/quicktime dla obiektu zasobnika podczas przesyłania pliku wideo. Te obiekty wideo można odtwarzać za pomocą odtwarzacza multimedialnego i adresu URL obiektu z s3.

2
Michael Sanderson 25 czerwiec 2020, 01:08