How do you open a new window that displays the streamed response of an AJAX request?
Asked
Active
Viewed 4,979 times
1 Answers
13
Other similar questions presuppose a scenario where the response has a defined url, other answers are kind of old.
For modern browsers, you use fetch you can can call blob() on the returned response and then use URL.createObjectURL() to create a temporary url that you can open as normal with window.open().
Full example is something like
fetch(urlThatReturnsDataOpenableByBrowser)
.then(response => response.blob())
.then(data => window.open(URL.createObjectURL(data)))