JavaScript μ μ΄ν΄ - [AJAX] XHR(XMLHttpRequest)
XHR(XMLHttpRequest)μ΄λ?
XMLHttpRequest(XHR)μ AJAX μμ²μ μμ±νλ JavaScript APIμ λλ€. XHRμ λ©μλλ‘ λΈλΌμ°μ μ μλ²κ°μ λ€νΈμν¬ μμ²μ μ μ‘ν μ μμ΅λλ€.
XMLHttpRequest(XHR) κ°μ²΄λ μλ²μ μνΈ μμ©νλ λ° μ¬μ©λ©λλ€. μ 체 νμ΄μ§λ₯Ό μλ‘ κ³ μΉμ§ μκ³ λ URLμμ λ°μ΄ν°λ₯Ό κ²μ ν μ μμ΅λλ€. μ΄λ₯Ό ν΅ν΄ μΉ νμ΄μ§λ μ¬μ©μμ μμ μ λ°©ν΄νμ§ μκ³ νμ΄μ§μ μΌλΆλ§ μ λ°μ΄νΈ ν μ μμ΅λλ€. AJAX νλ‘κ·Έλλ°μ XMLHttpRequestλ§μ΄ μ¬μ©λ©λλ€.
[μ°Έκ³ μλ£μΆκ°]
https://www.w3schools.com/js/js_ajax_http.asp
AJAX The XMLHttpRequest Object
AJAX - The XMLHttpRequest Object The keystone of AJAX is the XMLHttpRequest object. The XMLHttpRequest Object All modern browsers support the XMLHttpRequest object. The XMLHttpRequest object can be used to exchange data with a web server behind the scenes.
www.w3schools.com
command.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
${param.msg}
postXHR.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript" src="postXHR.js"></script>
</head>
<body>
<form id="createForm" action="">
<input type="text" name="msg"/>
<input type="button" value="μ
λ ₯" onclick="toServer()"/>
</form>
<br /><br />
<div id="disp">
</div>
</body>
</html>
postXHR.js
/**
*
*/
var xhr = null;
var arr = new Array();
function toServer(){
var msg = document.getElementById("createForm").msg.value;
if(window.XMLHttpRequest){
xhr = new XMLHttpRequest;
}else{
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
// GET
// xhr.open("GET", "command.jsp?msg=" + msg, true); //μμ²λ°©μ, μλ²νμΌ, λΉλκΈ°μ(μ μ νμ΄μ§)
// xhr.send();
// POST
xhr.open("POST", "command.jsp", true);
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhr.send("msg="+msg);
xhr.onreadystatechange = process;
}
function process(){
if(xhr.readyState==4 && xhr.status==200){
arr.push("msg" + xhr.responseText);
var disp = document.getElementById("disp");
disp.innerText = xhr.responseText;
}
//alert(arr.join("\n"));
}