Since URLLoaderThrottles replace ResourceThrottles, they need to work for worker-initiated requests.
Here's a simple example:
index.html:
<html>
<script>
function startWorker() {
var worker = new Worker("worker.js");
worker.postMessage("foo.txt");
worker.onmessage = function(d) {
console.log(d.data)
}
}
</script>
<input type="button" onclick="startWorker()" value="create worker" />
</html>
worker.js:
onmessage = function(e) {
var xhr = new XMLHttpRequest();
xhr.open("GET", e.data, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
postMessage(xhr.responseText);
close();
}
}
xhr.send(null);
}
foo.txt:
hello world
Comment 1 by jam@chromium.org
, Dec 28 2017