원본출처 : http://www.w3.org/TR/XMLHttpRequest/



그냥 XHR의 모든 것이 알고 싶었다.
그래야 괜한 상상력을 동원한 뻘짓을 안할 수 있을테니까.
사실은 XHR을 이용한 server push에 대한 고민을 했었기 때문이다.
XHR.send() 이후에 XHR.readyState가 4가 된 후 연결을 계속 유지한 채로 XHR.responseText를 잘라먹으면서
server push를 구현할 수 있을지 없을지가 궁금했었다.
(server script에서 비동기방식으로 필요할 때만 flush가 가능하고 flush할 때마다 readyState를 4로 만들 수 있다는 전제가 필요하다...)
아무것도 모른채 유아적인 상상력만 부풀려대는 내 자신이 부끄럽다...-_-;


interface XMLHttpRequest {
    // event handler
    attribute EventListener onreadystatechange;
   
    // state
    const unsigned short UNSENT = 0;
    const unsigned short OPENED = 1;
    const unsigned short HEADERS_RECEIVED = 2;
    const unsigned short LOADING = 3;
    const unsigned short DONE = 4;
    readonly attribute unsigned short readyState;

    // request
    void open(in DOMString method, in DOMString url);
    void open(in DOMString method, in DOMString url, in boolean async);
    void open(in DOMString method, in DOMString url, in boolean async, in DOMString user);
    void open(in DOMString method, in DOMString url, in boolean async, in DOMString user, in DOMString password);
    void setRequestHeader(in DOMString header, in DOMSring value);
    void send();
    void send(in DOMString data);
    void send(in Document data);
    void abort();

    // response
    DOMString getAllResponseHeaders();
    DOMString getResponseHeader(in DOMString header);
    readonly attribute DOMString responseText;
    readonly attribute Document responseXML;
    readonly attribute unsigned short status;
    readonly attribute DOMString statusText;
};


Posted by bloodguy
,