Trying to use a pure JS approach to check if I have a valid JS image url. I am getting a warning that XMLHttpRequest
is deprecated. What is a better way to do this?
The warning is probably because you are tyring to do a synchronous request.
You're probably getting a message that the synchronous use of XMLHttpRequest is deprecated (because of its harmful effect on the user experience; it freezes the page while waiting for a response). I can assure you that proper asynchronous use of that API is not deprecated whatsoever.
Here's some example code for the correct use:
var xhr = new XMLHttpRequest()
xhr.onreadystatechange = function() {
if (this.readyState === this.DONE) {
console.log(this.status) // do something; the request has completed
}
}
xhr.open("HEAD", "http://example.com") // replace with URL of your choosing
xhr.send()
The cause of the warning was that in http.open('HEAD', url, false);
you put a third argument (async) as false
. As per the https://xhr.spec.whatwg.org/#synchronous-flag it should be set to true
.