νλμ μ 체 νμ΄μ§ λ΄λΆμμ
[νμν λ°μ΄ν°] λ§ μΌλΆ νμ΄μ§(μμ) μμ μλ΅λ°λ λ°©μ
( μ΄κ²μ λΉλκΈ°λ°©μ μ΄λΌκ³ νλ€ )
μΌλΆ νμ΄μ§(μμ) λ§ λ°±κ·ΈλΌμ΄λ λ‘ μλ²μ ν΅μ νμ¬
κ·Έ κ²°κ³Όλ₯Ό μΌλΆλΆμλ§ νμνλ λ°©μ
μλ²μ λ°μ΄ν°λ₯Ό μ£Όκ³ λ°μ λ XML λ₯Ό μ¬μ©νλ€κ³ ν΄μ
AJA'X' λΌκ³ λΆλ¦°λ€.
( β XML μμΈμλ HTML, TXT , JSON νμΌμ΄ κ°λ₯νλ°
μ΅κ·Όμλ JSON νμΌ μ£Όλ‘ μ¬μ©ν΄ λ°μ΄ν°λ₯Ό μ£Όκ³ λ°λλ€ )
μΉ νμ΄μ μ 체λ₯Ό μλ‘κ³ μΉ¨ νμ§ μμλ μΉ νμ΄μ§ μΌλΆλΆμ κ°±μ ν μμλ€.
μΉ νμ΄μ§κ° λ‘λ λ νμ μλ²λ‘ λ°μ΄ν° μμ²μ 보λ΄κ±°λ λ°μ μ μλ€.
λ€μν UI ꡬνμ΄ κ°λ₯νλ€
νμ΄μ§ μ΄λμ΄ μκΈ°μ νμ€ν 리 κ΄λ¦¬κ° λΆκ°λ₯νλ€.
λ°λ³΅μ μΈ λ°μ΄ν° μμ²μ΄ μμΌλ©΄ λλ €μ§κ±°λ μλμ΄ λ©μΆλ€.
νλ‘κ·Έλλ° λ‘μ§μ΄ 'ν λ°©ν₯' μΌλ‘ λμ΄μμΌλ©°
λ€μ μ
무λ₯Ό μ§ννκΈ° μν΄μλ μ΄μ μ
무 μνμ΄ λ°λμ νμνλ€
μΌλΆ μμμ΄λΌλ λ°μ΄ν° λ³νλ₯Ό νκΈ° μν΄μλ
μ 체 νμ΄μ§λ₯Ό μλ‘κ³ μΉ¨νμ¬ μ 체λ₯Ό μλ²μ μ¬μμ² ν΄μΌνλ€.
ν λ°©ν₯μ μ
λ¬΄κ° μ¬λ¬ κ°λλ‘ λμ΄μμΌλ©°
μ΄μ μ
무 μνμ΄ μμ΄λ νΉμ μ
λ¬΄λ§ λ°λ‘ μνμν¬ μ μλ€.
μΌλΆ μμμ λ°μ΄ν° κ°±μ μ νλλΌλ λλ¨Έμ§ μ 체 μμμ λ©μΆλ κ²μ΄ μλ
νλ‘κ·Έλ¨μ΄ κ³μ λμκ°λ€
GET λ°©μμΌλ‘ AJAX μμ²λ³΄λ΄κΈ°
function send_GET(){ let xhr = new XMLHttpRequest(); xhr.open("GET", "requset_ajax.jsp?userid=apple&userpw=1234", true ); xhr.send(); xhr.onreadystatechange = function(){ if( xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200){ document.getElementById("result").innerHTML = xhr.responseText; } }
let xhr = new XMLHttpRequest();
new XMLHttpRequest();
μΉ λΈλΌμ°μ κ° μλ²μ λ°μ΄ν°λ₯Ό κ΅νν λ ( AJAX λ₯Ό μ¬μ©ν λ ) μ¬μ©νλ κ°μ²΄
xhr.open("GET", "requset_ajax.jsp?userid=apple&userpw=1234", true );
open( μ λ¬λ°©μ , "URL μ£Όμ or νμΌ μ£Όμ " , λκΈ°μ¬λΆ true = λΉλκΈ° , false = λκΈ° ) ;
- β 2λ²μ§Έ νλΌλ―Έν° μμ .JSON* νμΌμ ν΅ν΄ λ°μ΄ν°λ₯Ό κ΅ννλ€ _
xhr.send();
μμ±ν AJAX μμ²μ μλ²λ‘ μ λ¬νλ λ©μλ
xhr.onreadystatechange = function(){ if( xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200){ document.getElementById("result").innerHTML = xhr.responseText; }
xhr.onreadystatechange
μλ²λ‘λΆν° μλ΅νκΈ° μν λ©μλ
xhr.readyStatus μ xhr.status κ° μ μμΌ λμλ§
<id="result"> νκ·Έμ xhr.μλ΅κ°μ λ°ννκ² λ€λ μλ―Έμ΄λ©°
XMLHttpRequest κ°μ²΄μ readyStateνλ‘νΌν° κ°μ΄ λ³ν λλ§λ€
μλμΌλ‘ νΈμΆλλ ν¨μλ₯Ό μ€μ νλ€.
- status
-> μλ²μ λ¬Έμμνλ₯Ό λνλΈλ€.(HTTP μνμ½λ)
1. 1XX : μ‘°κ±΄λΆ μλ΅
2. 2XX : μ±κ³΅
3. 3XX : λΌλ€μ΄λ μ μλ£
4. 4XX : μμ² μ€λ₯
5. 5XX : μλ² μ€λ₯
- readyState
-> XMLHttpRequest κ°μ²΄μ νμ¬ μνλ₯Ό λνλΈλ€
1. UNSENT(μ«μ 0) : XMLHttpRequest κ°μ²΄κ° μμ±λ¨
2. OPENED(μ«μ 1) : open() λ©μλκ° μ±κ³΅μ μΌλ‘ μ€νλ¨
3. HEADERS_RECEIVED(μ«μ 2) : λͺ¨λ μμ²μ λν μλ΅μ΄ λμ°©
4. LOADING(μ«μ 3) : μμ²μ λ°μ΄ν°λ₯Ό μ²λ¦¬ μ€
5. DONE(μ«μ 4) : μμ²ν λ°μ΄ν°μ μ²λ¦¬κ° μλ£λμ΄ μλ΅ν
μ€λΉκ° μλ£λ¨.