Was erwartest du denn stattdessen?
Naja, ich sehe in Wireshark meine Anfrage (request.open('get', url, true);), dann eine Antwort vom Server mit HTTP/1.1 200 und erst bei der zweiten Antwort, die einfach nur eine Retransmission der bereits erhaltenen Antwort darstellt, reagiert mein Skript auf readyState == 4. Wofür die erneute Übertragung? Die Daten liegen doch schon vor!