Résumé


La méthode statique URL.createObjectURL() crée une chaîne contenant une URL représentant l’objet passé en paramètre. La durée de vie de l’URL est liée au document de la fenêtre depuis laquelle elle a été créée. La nouvelle URL d’objet représente l’objet File ou Blob spécifié.

Syntaxe

objectURL = URL.createObjectURL(object);

Paramètres

object
Un objet File, Blob ou MediaSource pour lequel créer une URL d’objet.

Valeur de retour

Une DOMString contenant une URL d’objet, pouvant être utilisée comme une référence vers l’objet source object spécifié.

Exemple

Voir Utilisation de l’objet URLs pour afficher des images.

Notes d’utilisation

Gestion de la mémoire

À chaque fois que vous appelez createObjectURL(), un nouvelle URL d’objet est créée, même si vous en avez déjà créée une pour le même objet. Chacune d’elles doit être libérée en appelant URL.revokeObjectURL() lorsque vous n’en avez plus besoin.

Les navigateurs libèrent automatiquement les URL d’objet lorsque le document est déchargé (unload) ; cependant, pour des performances et une utilisation de la mémoire optimales, si vous avez la possiblité de les libérer explictement sans danger, vous devriez le faire.

Utiliser les URL d’objet pour les flux de média

Dans d’anciennes versions de la spécification de Media Source, attacher un flux à un élément <video> requiérait de créer une URL d’objet pour le MediaStream. Cela n’est plus nécessaire, et les navigateurs cessent progressivement de supporter cette pratique.

Important : si vous avez toujours du code qui repose sur URL.createObjectURL pour attacher des flux à des éléments média, vous devez mettre à jour votre code pour attacher simplement srcObject directement au MediaStream.

Spécifications

Spécification Statut Commentaire
File API
La définition de 'createObjectURL()' dans cette spécification.
Version de travail Définition initiale.
Media Source Extensions
La définition de 'URL' dans cette spécification.
Recommendation

Extension MediaSource.
Les anciennes versions de cette spécification utilisaient createObjectURL() pour les objets MediaStream ; ce n’est plus supporté.

Compatibilité des navigateurs

Update compatibility data on GitHub
OrdinateurMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariWebview AndroidChrome pour AndroidEdge MobileFirefox pour AndroidOpera pour AndroidSafari pour iOSSamsung Internet
Support simple
Expérimentale
Chrome Support complet 8Edge Support complet 12Firefox Support complet 4
Notes
Support complet 4
Notes
Notes createObjectURL() is no longer available within the context of a ServiceWorker.
IE Support complet 10Opera Support complet 15Safari Support complet 6WebView Android ? Chrome Android Support complet 18Edge Mobile ? Firefox Android Support complet 4
Notes
Support complet 4
Notes
Notes createObjectURL() is no longer available within the context of a ServiceWorker.
Opera Android Support complet 15Safari iOS Support complet 6Samsung Internet Android ?
No longer accepts MediaStream objectChrome ?
Notes
?
Notes
Notes See here for progress on deprecation.
Edge ? Firefox Support complet 62IE ? Opera ?
Notes
?
Notes
Notes See here for progress on deprecation.
Safari ?
Notes
?
Notes
Notes See here for progress on deprecation.
WebView Android ? Chrome Android ?
Notes
?
Notes
Notes See here for progress on deprecation.
Edge Mobile ? Firefox Android Support complet 62Opera Android ?
Notes
?
Notes
Notes See here for progress on deprecation.
Safari iOS ?
Notes
?
Notes
Notes See here for progress on deprecation.
Samsung Internet Android ?

Légende

Support complet  
Support complet
Compatibilité inconnue  
Compatibilité inconnue
Fonctionnalité expérimentale. Celle-ci peut être amenée à changer par la suite.
Fonctionnalité expérimentale. Celle-ci peut être amenée à changer par la suite.
Voir les notes d'implémentation.
Voir les notes d'implémentation.

Voir aussi

Étiquettes et contributeurs liés au document

Contributeurs à cette page : Watilin, Blodangan, fscholz, teoli, nicofrand, alaric
Dernière mise à jour par : Watilin,