Если можете, тогда используйте URL-адрес непосредственно как src
вашего <img>
.
. Использование URL-адреса blob:
полезно только в том случае, если у вас есть Blob, содержащий файл изображения, и вы необходимо отобразить его.
Один из распространенных случаев, когда это происходит, - когда вы позволяете пользователям выбирать файл со своего диска. Средство выбора файлов даст вам доступ к объекту File, который является BLOB-объектом и который вы можете загрузить в память. Однако у вас нет доступа к URI, который указывает на файл на диске, поэтому вы не можете установить src
в этом случае.
Здесь вам нужно создать blob:
URI, который будет указывать на Файловый объект. Внутренний механизм извлечения в браузере сможет извлекать данные на диске пользователя с этого URL и, таким образом, отображать это изображение:
document.querySelector('input').onchange = e => {
const file = e.target.files[0]; // this Object holds a reference to the file on disk
const url = URL.createObjectURL(file); // this points to the File object we just created
document.querySelector('img').src = url;
};
<input type="file" accepts="image/*">
<img>
В других случаях вы создали файл изображения из внешнего интерфейса (например, используя холст).
Но если ваш BLOB-объект является только результатом извлечения ресурса с вашего сервера, и что ваш сервер не требует специального запроса для его обслуживания, тогда действительно нет никакой реальной причины ...