μ€νλ§λΆνΈ μΈμ μ€ν λ¦¬μ§ sessionStorage
login.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<style type="text/css">
#app{
margin: auto;
margin-top: 60px;
width: 60%;
border: 3px solid #8ac007;
padding: 10px;
}
</style>
</head>
<body>
<h1>Login</h1>
<div id="app">
<table border="1">
<tr>
<td>μμ΄λ</td>
<td>
<input type="text" id="id" placeholder="μμ΄λμ
λ ₯" size="20">
</td>
</tr>
<tr>
<td>ν¨μ€μλ</td>
<td>
<input type="text" id="pwd" placeholder="ν¨μ€μλμ
λ ₯" size="20">
</td>
</tr>
<tr>
<td colspan="2">
<button type="button" id="login">login</button>
<button type="button" id="account">νμκ°μ
</button>
</td>
</tr>
</table>
</div>
<script type="text/javascript">
$(document).ready(function() {
$('#login').click(function() {
$.ajax({
url:"http://localhost:3000/login",
type:'post',
data:{ id:$('#id').val(), pwd:$('#pwd').val() },
success:function(data){
// alert('success');
if(data == ''){
alert('login fail');
}else{
alert('login success');
sessionStorage.setItem("login", JSON.stringify(data));
location.href = "bbslist.html";
}
},
error:function(){
alert('error');
}
});
});
$('#account').click(function() {
location.href = "account.html";
});
});
</script>
</body>
</html>
sessionStorage.setItem( );
μΉμμ λ°μ΄ν°λ₯Ό μ μ₯νλ λ°©λ² μ€ μλ²κ° μλ ν΄λΌμ΄μΈνΈμμ κ°λ₯ν λ°©λ²μ μμλ³΄λ €κ³ ν©λλ€.
μΉμ¬μ΄νΈμ μ 보λ₯Ό μ μ₯νκΈ° μν΄μ λ°λμ μλ²κ° νμν κ²μ μλλλ€. μ¬μ© λͺ©μ μ λ°λΌ ν΄λΌμ΄μΈνΈ μ μ₯μ μμ μ’μ μν μ ν μ μμ΅λλ€. μΌλ°μ μΌλ‘ ν΄λΌμ΄μΈνΈ μ μ₯μλ₯Ό μκ°νλ©΄ κ°μ₯ λ¨Όμ μΏ κΈ° μ μ₯μλ₯Ό λ μ¬λ¦¬κ² μ§λ§ html5μλ μ’ λ ν¨κ³Όμ μΈ ν΄λΌμ΄μΈνΈ μ μ₯ 곡κ°μ μ 곡νλλ° μ΄λ€ κ²μ΄ μλμ§ μμ보면 λ€μκ³Ό κ°μ£ .
! localStorage, sessionStorage API μμ보기
html5μμλ μ’ λ μ½κ³ κ°λ¨ν μ μ₯μ μ 곡μ μν΄ μλ‘μ΄ localStorageμ sessionStorage APIλ₯Ό μ 곡ν©λλ€. λ λ€ μ μ₯ 곡κ°μΌλ‘ μ¬μ©ν μ μλλ° μ΄ λμ κ°μ₯ ν° μ°¨μ΄μ μ΄λΌλ©΄ μ μ₯μλ‘μμ κΈ°λ₯μ λλΆλΆ λμΌνλ©° λ¨μ§ sessionStorageμ κ²½μ° μΈμ
μ΄ μ’
λ£λλ©΄ μ μ₯λ λ°μ΄ν°λ ν¨κ» μ¬λΌμ§ λ€λ μ μ΄ λ€λ₯Έ μ μ
λλ€. κ·Έλ λ€λ©΄ μ΄ λ©μλλ μ΄λ€ κ²½μ°μ μ¬μ©ν μ μμκΉμ? μΏ ν€λ₯Ό ν¬ν¨ν΄ μλ‘μ μ₯λ¨μ μ λνμ¬ λΉκ΅νλ©° μμ보λλ‘ νκ² μ΅λλ€.
# μΏ ν€, μλ² μ μ₯μ, localStorage, sessionStorage μ°¨μ΄μ λ° μ₯λ¨μ
μΏ ν€μ κ²½μ° μ μ₯ κ°λ₯ν 곡κ°μ ν¬κΈ°κ° κ°μ₯ μκ³ νλμ ν
μ€νΈ ννλ‘ μ μ₯λλ€. κ·Έλ κΈ° λλ¬Έμ λΉκ΅μ κ°λ¨ν ν
μ€νΈ νμ
μ λ°μ΄ν°λ₯Ό μ μ₯νλλ° μ©μ΄νλ€. μ΄λ° κ°μΌλ‘λ νμ
μ μ΄λ¦μ μλ‘ λ€ μ μλ€. νμ
μ κ²½μ° 24μκ° λμ λμνμ§ μλλ‘... μ¦ μ΄μ§ μλλ‘ μ€μ νλ κ²½μ°κ° λ§μλ° μ΄λ μΏ ν€μ λ³μλ₯Ό μ μ₯νκ³ 24μκ°μ λ§λ£μκ°μ μ€μ νλ κ²μ΄ μ’λ€.
μλ²μ μ₯μλ λ°μ΄ν°μ λκΈ°νκ° νμνκΈ° λλ¬Έμ κΌ νμν κ²½μ°κ° μλλΌλ©΄ μ μ‘μ μ΅μν νλ κ²μ΄ μ’μ κ²μ΄λ€. μ΄λ° μ΄μ λ‘ μλ² μ μ₯μλ λ°μ΄ν°μ ν¬κΈ°κ° λ§€μ° ν¬κ±°λ λ°λμ μ μ₯ν΄μΌ νλ κ²½μ°μλ§ μ¬μ©λλ€.
λ°μ΄ν°κ° ν¬κΈ°λ λ§λ£μκ°μ κ³ λ €νμλ μ μ μ₯μμ μ€κ° μ λμ μ λ§€ν κ²½μ°κ° μμ μ μλ€. μ μ₯μκ° νμνμ§λ§ λ€μμ 컬λΌμ΄ νμν κ²½μ°κ° μλλ§ λ¨μν ννλΌλ©΄ localStorage, sessionStorageλ₯Ό μ¬μ©νλκ² ν¨κ³Όμ μΈ λ°©λ²μ΄λ€.
! localStorage, sessionStorageλ₯Ό μ΄λ€ κ²½μ°μ μ¬μ©ν κΉ
λλΆλΆμ λ°μ΄ν°μ κ²½μ° λ°μ΄ν°λ² μ΄μ€μ μ μ₯νλ―λ‘ λ‘컬 λ° μΈμ
μ€ν 리μ§κ° μ¬μ©λλ κ³³μ 그리 λ§μ§ μλ€. λλΆλΆ μμμ μΈ μ©λ λλ μΊμ, history κΈ°λ₯μ μνμ¬ μ¬μ©λλ€. μλμ κ²½μ°κ° κ·Έ μμ΄λ€.
- κΈ μμ± μ€κ° μ€κ°μ μμ΄λ²λ¦¬μ§ μκΈ° μν μμ μ μ₯μ©λ
- μ₯λ°κ΅¬λλ μ’μνλ μ½ν μΈ λ± μμλ‘ λ³κ²½λλ κ²½μ°
- λ°©λ¬Έμμ μ΄λ κ²½λ‘λ₯Ό μ μ₯νμλ€κ° μ΄λν κ²½μ°
- κ·Έ μΈ μλ²μ λ°λμ μ μ₯ν νμκ° μλ κ²½μ°
κ·ΈλΌ μλμμλ μμ λ₯Ό ν΅νμ¬ λμ± μμΈνκ² μμ보μ.
# sessionStorage μμ 보기
μΈμ
μ κΈ°μ€μΌλ‘ λ°μ΄ν°κ° μ μ₯ λ° μ μ§λκΈ° λλ¬Έμ μ΄ κ°μ²΄μ μ μ₯λ κ°μ μΌμμ μΈ μλͺ
μ κ°μ§κ²λλ€. λ§μ½ μΈμ
μ΄ μ’
λ£λλ κ²½μ°... λΈλΌμ°μ λ₯Ό λ«κ±°λ μΌμ μκ° μλ¬΄λ° λμλ νμ§ μλλ€λ©΄ λΉμ°ν μ μ₯λ κ°μ μμ λ κ²μ΄λ€.
λ§μ½ λ°μ΄ν°κ° μμ λμ§ μκΈΈ λ°λλ€λ©΄ μμ λμμλ localStorageλ₯Ό μ¬μ©νκΈ° λ°λλ€. μλμ μ¬μ©λ°©λ²μ localStorageμ κ±°μ λμΌν λ©μλμ νλ‘νΌν°λ₯Ό κ°λλ€. μ¦, λμΌν λ°©λ²μΌλ‘ μ¬μ©μ΄ κ°λ₯νλ€ νκ² λ€. κ·ΈλΌ μλ μμ λ₯Ό μ°Έκ³ νμ.
(μ°Έκ³ λ‘ μΈμ
μ μ¬μ©ν μ μ₯λ°©λ²μ 보μ λ° μ€μν λ°μ΄ν°μ κ²½μ° λ¬΄λ°©λΉλ‘ λ
ΈμΆλλ κ²½μ°λ₯Ό νΌνκΈ° μν΄μ μ¬μ©λλ κ²½μ°κ° λ§λ€.)
sessionStorage.setItem("domain", "webisfree.com");
// domainμ΄λ ν€(key) κ°μ μ¬μ©νμ¬ ν΄λΉ ν
μ€νΈλ₯Ό μ μ₯ν¨
sessionStorage.getItem("domain");
// ν€μ μ μ₯λ κ°μ λ°ν. μ¬κΈ°μλ webisfree.com μΆλ ₯λ¨
sessionStorage.removeItem("domain");
// domain ν€μ λ°μ΄ν° λͺ¨λ μμ
sessionStorage.clear();
// μ μ₯λ λͺ¨λ κ° μμ
# localStorage μμ λ° μ½λ보기
μμλ μΈκΈνμ§λ§ μ λκ°μ§ κ°μ²΄μ μ°¨μ΄μ μ μΈμ
μ λ°λΌμ λ°μ΄ν°κ° μ μ§λλκ° μλλκ°λ‘ ꡬλΆν μ μλ€. κ·Έλ κΈ° λλ¬Έμ μ¬μ©νλ λ°©λ²λ κ±°μ λμΌνλ€ νκ² λ€. μλλ localStorageκ°μ²΄μ μ¬μ©λ‘ μμ£Ό μ¬μ©λλ λ©μλ, νλ‘νΌν°λ₯Ό ν¨κ» μμ보μ.
# λ°μ΄ν°μ μ μ₯ setItem()νΉμ κ°μ λ°μ΄ν°λ₯Ό μ μ₯νκΈ° μν λ°©λ²μΌλ‘ μλμ κ°μ΄ λ©μλλ₯Ό μ¬μ©νκ±°λ 리ν°λ΄νκ² μ¬μ©νλ λ κ°μ§ λ°©λ²μ΄ κ°λ₯νλ€. μλ μμ λ testλ μ΄λ¦μ keyκ°μ μ νκ³ μ΄μ 123μ΄λ κ°μ μ μ₯νλ μμ μ΄λ€.
localStorage.test = '123';
localStorage.setItem('test', '123');
μ¬κΈ°μ μ¬μ©λ setItem() λ©μλλ κ°μ μ μ₯νλ κ°λ¨ν λ°©μμΌλ‘ keyκ°μ λ§€μΉλ valueλ₯Ό μΈμλ‘ λ겨주면 λλ€. λ§€μ° κ°λ¨νκ² μ μ₯ν μ μλ€. μλλ λ±λ‘λ keyκ°μ valueλ₯Ό μ»κΈ° μν λ°©λ²μ΄λ€.
# λ°μ΄ν° λΆλ¬μ€κΈ°, getItem()
localStorage.test;
localStorage.getItem('test');
μμ μ§μ ν€κ°μ μ
λ ₯νκ±°λ getItem() λ©μλλ₯Ό μ¬μ©νλ λ°©λ² λ κ°μ§κ° μλ€. μλλ νΉμ key κ°μ μ§μ°λ λ°©λ²μ λνμ¬ μμ보μ.
μ°Έκ³ λ‘ μ 체 localStorageμ λ΄κ²¨μλ λͺ¨λ κ°μ νμΈνλ €λ©΄ getItem()μ μλ¬΄λ° κ°λ λκΈ°μ§ μμΌλ©΄ λͺ¨λ μ 보λ₯Ό λ°μμ¬ μ μλ€.
localStorage.getItem(); // μ 체 κ° λ°μμ€κΈ°
κ·ΈλΌ μλλ λ°μ΄ν°λ₯Ό μμ νλ λ°©λ²μ΄λ€.
# λ°μ΄ν° μμ , removeItem()μλλ testλΌλ ν€κ°μ μ μ₯λ κ°μ μμ νλ μμ μ΄λ€.
localStorage.removeItem('test');
// localStorage κ°μ²΄μμ μνλ κ°μ μ§μ°λ λ°©λ²
localStorage.clear();
// νλ²μ μ μ₯λ λͺ¨λ κ°μ μμ νλ λ°©λ²
λ°μ΄ν°λ₯Ό μμ ν κ²½μ° removeItem()μ μ¬μ©νμ¬ νλλ§ μ κ±°ν μ μκ³ μλλ©΄ λͺ¨λ κ°μ μ§μΈ μ μλ clear() λ©μλλ μ‘΄μ¬νλ€.