javascript - Hur kontrollerar jag om url.createobjecturl genererade uri fortfarande är aktiv i typescript


Jag lagrar några bilder i min databas som blobs. Jag visar dem i min app genom att använda url.createobjecturl()-funktionen.

Men efter en tid kommer dessa genererade bilder att tas bort, hur testar jag om de fortfarande är aktiva?

Om de är aktiva, fortsätt använda dem, om de inte är aktiva, bygg om URI:n.

Jag använder Ionic 2, Angular 2 med TypeScript.

Svar #1

Så här gör jag det med JavaScript:

fetch(itemObjectURL)
.then(function checkForBlobHealth(blob){
    if (!blob.ok) {
        console.log('❗ ' + itemObjectURL + ': Local media file not present')
        window.URL.revokeObjectURL(itemObjectURL);
        //Take care of the situation
    } else {
        // Move on as usual
    }
})
.catch(function (err) {
    console.log('Failed verifying. Details: ' + err);
})