API magazynu Firebase - pobieranie pliku za pomocą metada

0

Pytanie

Używam rest api do pobierania plików w repozytorium firebase, jak opisano w następnej odpowiedzi https://stackoverflow.com/a/65462416/8634683.

I chciałbym ustawić metadane zarządzania pamięcią podręczną, ale nie mogę tego zrozumieć.

Znalazłem następny dokument na bazie ognia - https://firebase.google.com/docs/storage/web/file-metadata ale nie widziałem żadnej informacji o API rest.

=== Aktualizacja ====

Więc spędziłem niewielką inzynierii i odkrył, że kiedy używam JS SDK, biblioteka dodaje prefix w pliku, czy ktoś wie, co oznacza pierwsza długa liczba?

enter image description here

1

Najlepsza odpowiedź

1

Ok, znalazłem odpowiedź:

Prześlij plik dużego obiektu binarnego z przedrostkiem i przyrostkiem w następujący sposób:

let prefix = `
--23483860318350978727016216849495
Content-Type: application/json; charset=utf-8
Content-Disposition: form-data; name="metadata"

{"name":"${filePath}", "cacheControl":"max-age=7200","contentType":"${fileType}"}
                
--23483860318350978727016216849495
Content-Type: ${fileType}`

let suffix = '\n--23483860318350978727016216849495--'

let blobWithMetadata = new Blob([prefix, blob, suffix])

i dodaj następujące tytuły:

headers = { 
  'x-goog-upload-protocol': 'multipart',
  'content-type': 'multipart/related; boundary=23483860318350978727016216849495'
}
2021-12-01 09:29:41

W innych językach

Ta strona jest w innych językach

Русский
..................................................................................................................
Italiano
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................