これで XHR の改善は完了です。
しばらくの間、XHR2 のオーバーロードされた send()
メソッドで、ArrayBuffer
(生のバイト配列)の送信がサポートされました。
Chrome 22(現在の Canary 版)では、この機能のサポートが ArrayBufferView
の送信に置き換えられました。JS 型付き配列は単なる特別な ArrayBufferView
です。つまり、基になるバッファに触れることなく、型付き配列を直接送信できるようになりました。この変更は、最近の XMLHttpRequest2 仕様の更新に一致しています。
たとえば、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);
型付きの配列自体を送信するだけです。
xhr.send(uInt8Array);
最終的に、ArrayBuffers
の送信は削除されますが、当面は、バッファを送信しようとするとコンソールの警告が表示されます。
chromestatus.com で、以下のタイプの変更についての最新情報をご確認いただけます。