Firebase API de stockage - télécharger le fichier avec metada

0

La question

Je suis à l'aide de l'api rest pour télécharger des fichiers de firebase de stockage tel que décrit dans la réponse suivante https://stackoverflow.com/a/65462416/8634683.

Et je voudrais configurer le contrôle du cache de métadonnées , mais ne peut pas le comprendre.

J'ai trouvé la prochaine firebase doc - https://firebase.google.com/docs/storage/web/file-metadata mais n'avais pas vu toutes les informations sur l'API rest.

=== Mise à jour ====

J'ai donc fait un peu de reverse engineering, et j'ai constaté que lorsque je suis en utilisant le JS-kit de développement logiciel, la bibliothèque d'ajouter un préfixe pour le fichier, Tout savoir quel est le sens du premier numéro de long?

enter image description here

1

La meilleure réponse

1

J'ai donc trouvé la réponse:

Envoyer le fichier blob avec un préfixe et un suffixe comme suit:

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])

et ajouter les en-têtes suivants:

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

Dans d'autres langues

Cette page est dans d'autres langues

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