다음을 통해 공유


Sys.Net.XMLHttpExecutor 클래스

업데이트: 2007년 11월

브라우저의 XMLHTTP 지원 기능을 사용하여 비동기 네트워크 요청을 실행합니다.

네임스페이스:Sys.Net

상속: 없음

var executor = new Sys.Net.XMLHttpExecutor();

멤버

이름

설명

Sys.Net.XMLHttpExecutor 생성자

파생 클래스에서 구현되는 경우 Sys.Net.XMLHttpExecutor 클래스의 새 인스턴스를 초기화합니다.

Sys.Net.XmlHttpExecutor abort 메서드

실행자가 발생시킨 네트워크 요청 중 보류 중인 요청을 중지합니다.

Sys.Net.XmlHttpExecutor executeRequest 메서드

연결된 WebRequest 인스턴스에 지정되어 있는 네트워크 요청을 실행합니다.

Sys.Net.XmlHttpExecutor.getAllResponseHeaders 메서드

응답 헤더를 반환합니다.

Sys.Net.WebRequestExecutor.getResponseHeader 메서드

Sys.Net.XmlHttpExecutor.getResponseHeader 메서드

지정된 응답 헤더의 값을 가져옵니다.

Sys.Net.XmlHttpExecutor aborted 속성

실행자가 중단되었는지 여부를 나타내는 값을 반환합니다.

Sys.Net.XmlHttpExecutor responseAvailable 속성

중단 또는 제한 시간 초과와 같은 문제 없이 네트워크 요청이 반환되었는지 여부를 나타내는 값을 반환합니다.

Sys.Net.XmlHttpExecutor responseData 속성

응답 본문의 텍스트 표현을 가져옵니다.

Sys.Net.XmlHttpExecutor started 속성

실행자에서 브라우저의 XMLHTTP 개체에 요청을 전달했는지 여부를 나타내는 값을 반환합니다.

Sys.Net.XmlHttpExecutor statusCode 속성

브라우저의 XMLHTTP 개체에 대한 상태 코드를 가져옵니다.

Sys.Net.XmlHttpExecutor statusText 속성

브라우저의 XMLHTTP 개체에서 상태 텍스트를 가져옵니다.

Sys.Net.XmlHttpExecutor timedOut 속성

실행자 시간이 초과되었는지 여부를 나타내는 값을 반환합니다.

Sys.Net.XmlHttpExecutor xml 속성

브라우저의 XMLHTTP 개체에서 XML 응답을 포함하는 XMLDOM 개체를 반환합니다.

설명

XmlHttpExecutor 클래스는 기본 실행자로 사용되며 WebRequestExecutor 추상 클래스를 구현한 것입니다.

기본 실행자가 이미 설정되어 있으므로 이 클래스의 인스턴스를 만들어 웹 요청과 연결할 필요가 없습니다. 그러나 사용자 지정 실행자를 정의할 경우에는 실행자 인스턴스를 만들어 웹 요청의 기본 실행자로 설정해야 합니다.

네트워크 호출이 완료된 후 XmlHttpExecutor 개체는 응답 데이터를 가져올 때만 사용되고 이후에 삭제되어야 합니다.

참고

XMLHTTP 개체에 대한 자세한 내용은 About Native XMLHTTP를 참조하십시오.

예제

다음 예제에서는 XmlHttpExecutor 클래스의 메서드와 속성을 사용하는 방법을 보여 줍니다. 이 예제에는 XmlHttpExecutor 클래스와 상호 작용하는 클라이언트 스크립트 및 웹 페이지가 표시됩니다.

var resultElementId;

function pageLoad()
{
    resultElementId = $get("ResultId");
}

// This function aborts a Web request.
function AbortWebRequest()
{
    // Create the WebRequest object.
    wRequest =  new Sys.Net.WebRequest();

    // Set the request Url.  
    wRequest.set_url("getTarget.htm");

   // Clear the results area.
    resultElementId.innerHTML = "";

    // Set the Completed event handler, 
    // for processing return data
    wRequest.add_completed(OnCompleted);

    // Make the request.
    wRequest.invoke();

    // Get the current executor.
    var executor = wRequest.get_executor();


    // Abort the request.
    executor.abort();

    // Check if the executor is aborted.
    var execAborted = 
        executor.get_aborted();

    alert("Executor aborted: " + execAborted);
}

// This function executes a Web request.
function ExecuteWebRequest()
{
    // Create the WebRequest object.
    wRequest =  new Sys.Net.WebRequest();

    // Set the request Url.  
    wRequest.set_url("getTarget.htm");


    // Set the Completed event handler, for processing return data
    wRequest.add_completed(OnCompleted);

      // Clear the results area.
    resultElementId.innerHTML = "";

    // To use executeRequest you must instantiate the
    // executor, assign it to the Web request instance,
    // then call the executeRequest function.
    // Note: Normally to make a Web request you use
    // the invoke method of the WebRequest instance.
    var executor = new Sys.Net.XMLHttpExecutor();
    wRequest.set_executor(executor); 
    executor.executeRequest();

    var started = executor.get_started();

    alert("Executor started: " + started);
}



// This is the event handler called after 
// the Web request returns.
function OnCompleted(executor, eventArgs) 
{
    if(executor.get_responseAvailable()) 
    {

        // Get the Web request instance.
        var webReq = executor.get_webRequest();
        // Display request Url.
        alert(webReq.get_url());

       // Clear the previous results. 
       resultElementId.innerHTML = "";

       // Display the Web request status. 
       resultElementId.innerHTML +=
          "Request Status: [" + executor.get_statusCode() + " " + 
                    executor.get_statusText() + "]" + "<br/>";

        // Display the Web request headers.
        resultElementId.innerHTML += "Headers: <br/>";


        // Get all the headers.    
        resultElementId.innerHTML += 
        "All Request Headers: " +
            executor.getAllResponseHeaders() + "<br/>"; 

        // Get a specific header.
        resultElementId.innerHTML += 
        "Content-Type Header: " +
            executor.getResponseHeader("Content-Type") + 
            "<br/>";       

        // Display Web request body.
        resultElementId.innerHTML += "Body: <br/>";
        resultElementId.innerText += 
            executor.get_responseData();


    }
    else
    {
        if (executor.get_timedOut())
            alert("Timed Out");
        else
            if (executor.get_aborted())
                alert("Aborted");
    }

}

// This is the event handler called after 
// the Web request returns. It is designed
// for Web requests that return XML.
function OnSucceededXml(executor, eventArgs) 
{
    if (executor.get_responseAvailable()) 
    {
        // Display XML.
       if (document.all)
            resultElementId.innerText += executor.get_xml().xml;
        else
            // Firefox 
            resultElementId.textContent += "First node: " + 
                executor.get_xml().documentElement.nodeName;

    }
    else
    {
        if (executor.get_timedOut())
            alert("Timed Out");
        else
            if (executor.get_aborted())
                alert("Aborted");
    }
} 

// This function executes a Web request
// to get XML data.
function GetXml()
{
    // Create the WebRequest object.
    wRequest =  new Sys.Net.WebRequest();

    // Set the request Url.  
    wRequest.set_url("getTarget.xml");

     // Set the Completed event handler 
    // for processing return data.
    wRequest.add_completed(OnSucceededXml);

    // Clear the results area.
    resultElementId.innerText = "";

    // Invoke the Web request.
    wRequest.invoke();
}


// This function aborts a Web request.
function AbortWebRequest()
{
    // Create the WebRequest object.
    wRequest =  new Sys.Net.WebRequest();

    // Set the request Url.  
    wRequest.set_url("getTarget.htm");

   // Clear the results area.
    resultElementId.innerHTML = "";

    // Set the Completed event handler, 
    // for processing return data
    wRequest.add_completed(OnCompleted);

    // Make the request.
    wRequest.invoke();

    // Get the current executor.
    var executor = wRequest.get_executor();


    // Abort the request.
    executor.abort();

    // Check if the executor is aborted.
    var execAborted = 
        executor.get_aborted();

    alert("Executor aborted: " + execAborted);
}

참고 항목

참조

Sys.Net.WebRequestExecutor 클래스

Sys.Net.WebRequestManager 클래스

Sys.Net.WebRequest 클래스