[μ 보] JavaScriptμμ HTTP μμ²μ λ§λλ λ°©λ²
JavaScriptμμ HTTP μμ²μ λ§λλ λ°©λ²μΌλ‘λ λ΄μ₯λ fetch() ν¨μλ XMLHttpRequest (XHR) κ°μ²΄λ₯Ό μ¬μ©ν μ μμ΅λλ€. λ€μμ fetch()μ μ¬μ©νλ μμμ λλ€:
fetch('https://example.com/data')
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error(error));
μ΄ μμμμλ https://example.com/dataλ‘ GET μμ²μ 보λ΄κ³ μμ΅λλ€. fetch() ν¨μλ μμ²μ λν μλ²μ μλ΅μ λνλ΄λ Response κ°μ²΄λ₯Ό λ°ννλ Promiseλ₯Ό λ°νν©λλ€.
κ·Έλ° λ€μ, Response κ°μ²΄μμ json() λ©μλλ₯Ό νΈμΆνμ¬ μλ΅μμ JSON λ°μ΄ν°λ₯Ό μΆμΆν μ μμ΅λλ€. μ΄ λ©μλλ Promiseλ₯Ό λ°ννμ¬ νμ±λ JSON λ°μ΄ν°λ₯Ό λνλ λλ€.
λ λ²μ§Έ then() λ©μλλ₯Ό μ¬μ©νμ¬ μ΄μ Promiseμμ λ°νλ JSON λ°μ΄ν°λ₯Ό μ²λ¦¬ν μ μμ΅λλ€. μ΄ μμ μμλ λ°μ΄ν°λ₯Ό μ½μμ λ‘κ·Έλ‘ μΆλ ₯νμ§λ§, μ¬κΈ°μμ νμν μμ μ μνν μ μμ΅λλ€.
λ§μ§λ§μΌλ‘, catch() λ©μλλ₯Ό μ¬μ©νμ¬ μμ² λλ μλ΅ μ€μ λ°μν μ μλ μ€λ₯λ₯Ό μ²λ¦¬ν©λλ€.
λ€μμ XMLHttpRequest (XHR) κ°μ²΄λ₯Ό μ¬μ©νλ μμμ λλ€:
const xhr = new XMLHttpRequest();
xhr.open('GET', 'https://example.com/data');
xhr.responseType = 'json';
xhr.onload = function() {
console.log(xhr.response);
};
xhr.send();
μ΄ μμμμλ μλ‘μ΄ XHR κ°μ²΄λ₯Ό λ§λ€κ³ https://example.com/dataλ‘ GET μμ²μ μ½λλ€. responseType μμ±μ jsonμΌλ‘ μ€μ νμ¬ XHR κ°μ²΄κ° μλ΅μ μλμΌλ‘ JSONμΌλ‘ νμ±νλλ‘ν©λλ€.
onload μ΄λ²€νΈ νΈλ€λ¬λ₯Ό μ€μ νμ¬ μ±κ³΅μ μΈ μλ΅μ μ²λ¦¬ν©λλ€. μ΄ μμμμλ μλ΅μ μ½μμ λ‘κ·Έλ‘ μΆλ ₯ν©λλ€.
λ§μ§λ§μΌλ‘, send() λ©μλλ₯Ό νΈμΆνμ¬ μμ²μ 보λ λλ€.