XMLHttpRequest Level 2
Firefox Nightly:: XMLHttpRequest の readyState 値 - hogehoge @teramako の続き、かな。
前のはいきなり枝葉に走ってしまったが、Bug 649133 ? Implement XHR2 responseType/response attributes によって、まだドラフトだけどXMLHttpRequest Level 2が実装されて来てますよ。
どういうことかというと、HTML5的何かがゴニョゴニョできるようになる。
- xhr.responseType
- xhr.response
という値が使用できる。
xhr.mozResponseTypexhr.mozResponse
だけど。ベンダープレフィックスは取り除かれました
んで、何が嬉しいの? というと。
var xhr = new XMLHttpRequest(); xhr.open("GET", url, false); xhr.responseType = "blob"; xhr.send(null); var file = xhr.response; file instanceof File; // true // ....
という感じの書き方ができる。
xhr.responseType
に入れた文字列によって、xhr.response
の内容が変わってくる。
xhr.responseType
に入れられるのは、
mozResponseType | responseの値 |
---|---|
"arraybuffer" | ArrayBufferオブジェクト |
"blob" | FileAPIのFileオブジェクト |
"document" | Documentオブジェクト(xhr.responseXMLと同じ?) |
"text" | String (xhr.responseTextと同じ?) |
今まではXHRからバイナリを扱うのは困難だったわけだけど、それが簡単になったというわけ。
夢が広がりますね!!!
Google Chrome は既に実装してた。Chrome実装早いなあ。