URL.createObjectURL()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
O método estático URL.createObjectURL()
cria um DOMString
contendo a URL representando o objeto passado como parâmetro.
O tempo de vida da URL é vinculado ao document
da janela onde ele foi criado. O novo objeto URL represenda o objeto File
especificado ou o objeto Blob
.
Para anular um objeto URL, execute o método revokeObjectURL()
Nota: This feature is available in Web Workers.
Nota: Esta funcionalidade não está disponível em Service Workers devido ao potencial de criar vazamento de memória
Sintaxe
const objectURL = URL.createObjectURL(object);
Parâmetros
object
-
Um
File
,Blob
, ou objetoMediaSource
para criar um objeto URL.
Retorno de valor
Uma DOMString
contendo o objeto URL e pode ser usado para referenciar o conteúdo especificado na origem do object
.
Exemplos
Notas de uso
Gerenciamento de memória
Cada vez que você executa createObjectURL()
, um novo objeto URL é criado, mesmo que você já tenha criado este objeto. Cada um desses pode ser eliminado executando o método URL.revokeObjectURL()
quando você não precisa mais dele.
Os navegadores vão limpar objetos URLs automaticamente quando o documento for descarregado; contudo, para otimizar a performace e o uso de memória, se há momentos que é seguro descarregar, você deve fazer isso.
Usando objeto URL para media stream
Em versões antigas da especificação Media Source, anexar stream a um elemento <video>
é obrigatório criar um objeto URL para o MediaStream
. Isto não é mais necessário, e os navegadores estão removendo o suporte para isso.
Aviso:
Se você ainda tem código com
createObjectURL()
para anexar streams em elementos
de media, você precisa atualizar seu código para srcObject
to the MediaStream
directly.
Especificações
Specification |
---|
File API # dfn-createObjectURL |
Compatibilidade de browser
BCD tables only load in the browser