Aangekomen! xhr.send(ArrayBufferViews)

En hier dacht je dat we klaar waren met het verbeteren van XHR!

De overbelaste send() methode van XHR2 ondersteunt al een tijdje het verzenden van een ArrayBuffer (een onbewerkte byte-array).

Chrome 22 (huidige Canary) maakt deze functie overbodig door deze te vervangen door het verzenden van ArrayBufferView -s. JS Typed Arrays zijn slechts speciale ArrayBufferView 's, dus dit betekent eigenlijk dat je nu een getypte array rechtstreeks over de draad kunt sturen zonder de onderliggende buffer aan te raken. Deze wijziging komt overeen met de recente updates van de XMLHttpRequest2-specificatie .

Dus in plaats van bijvoorbeeld een ArrayBuffer te verzenden:

var xhr = new XMLHttpRequest();
xhr.open('POST', '/server', true);
xhr.onload = function(e) { ... };

var uInt8Array = new Uint8Array([1, 2, 3]);

xhr.send(uInt8Array.buffer);

Stuur gewoon de getypte array zelf:

xhr.send(uInt8Array);

Uiteindelijk zal het verzenden ArrayBuffers worden verwijderd, maar voorlopig krijg je consolewaarschuwingen wanneer je probeert een buffer te verzenden.

Zoals altijd kunt u dit soort wijzigingen bijhouden door chromestatus.com te volgen.