put(file, options)
put() envoie un fichier et renvoie le nouvel objet.
Entrées
L’extension de l’objet provient de
filename, puis du nom de base du chemin ou du nom du File. Les octets et un Blob simple n’ont pas de nom : passez donc filename (par exemple "data.json") lorsque vous les envoyez.
Dans Node.js, un chemin qui ne peut pas être ouvert lève une
Error simple (Cannot open file: <path>, avec l’erreur d’origine dans cause). Dans un navigateur, passer un chemin échoue plus tôt, avec l’erreur de l’import de node:fs. Utilisez plutôt un File issu d’un <input type="file">.Options
Voir Object Post pour l’ensemble des règles côté serveur.
Résultat
Envois simples et multipart
put() choisit le mode d’envoi en fonction de la taille du fichier :
Chaque fichier doit faire au moins 512 octets ; les fichiers plus petits échouent avec
FILE_TOO_SMALL. Le max_size d’une règle ou d’un jeton d’envoi, ou votre quota de stockage, peut abaisser le plafond de 10 GiB.
Déroulement d’un envoi multipart
- Le SDK démarre l’envoi, et le serveur répond avec ses limites de parties (
max_size,max_parts). - Le fichier est découpé en parties de
min(max_size, max(16 MiB, ceil(size / max_parts)))octets. Une partie fait généralement 16 MiB ou plus, mais elle est plus petite lorsque lemax_sizedu serveur est plus petit. - Les parties sont envoyées 6 à la fois, la limite du serveur pour les parties en cours. Une partie échouée fait l’objet de nouvelles tentatives dans la limite de
maxRetries. - Lorsque toutes les parties sont arrivées, le SDK finalise l’envoi.
put().
Un compte peut avoir au maximum 32 envois multipart ouverts (partagés avec la passerelle S3) ; un de plus échoue avec
TOO_MANY_OPEN_UPLOADS. Comme les parties partent 6 à la fois par compte, effectuez un seul gros envoi à la fois.Envoyer depuis le navigateur
N’envoyez jamais la clé API à un navigateur. À la place, votre serveur génère un jeton d’envoi de courte durée et le navigateur envoie avec celui-ci.- Serveur
put(), envois multipart compris. Toute autre méthode échoue avec 403 UPLOAD_TOKEN_NOT_ALLOWED.
uploadTokens.create(options)
Le jeton fige toutes les options avec lesquelles il a été généré.
Elle renvoie
{ token, expires_at, max_uses }. Voir Jetons d’envoi pour les règles côté serveur.
uploadTokens.create() est une écriture et a droit à une seule tentative : elle n’est jamais réessayée.
