Chegou! xhr.send(ArrayBufferViews)

Aqui você achou que tínhamos terminado de melhorar o XHR.

Já faz algum tempo que o método send() sobrecarregado do XHR2 era compatível com o envio de uma ArrayBuffer (uma matriz de bytes brutas).

O Chrome 22 (Canário atual) suspendeu o uso desse recurso. Ele será substituído pelo envio de ArrayBufferViews. Matrizes tipadas JS são apenas ArrayBufferViews especiais. Isso significa que agora é possível enviar uma matriz tipada diretamente por toda a rede, sem tocar no buffer subjacente. Essa mudança está alinhada às atualizações recentes da especificação XMLHttpRequest2 (em inglês).

Por exemplo, em vez de enviar um ArrayBuffer:

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

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

xhr.send(uInt8Array.buffer);

Basta enviar a matriz tipada:

xhr.send(uInt8Array);

O envio de ArrayBuffers será removido, mas, por enquanto, você receberá avisos no console ao tentar enviar um buffer.

Como sempre, acompanhe esses tipos de alterações acessando chromestatus.com.