30 lines
1.0 KiB
JavaScript
30 lines
1.0 KiB
JavaScript
async function doLogin() {
|
|
const user = document.getElementById('loginUser').value.trim();
|
|
const pass = document.getElementById('loginPass').value.trim();
|
|
if (!user || !pass) { document.getElementById('loginError').textContent = '请输入用户名和密码'; return; }
|
|
try {
|
|
const res = await fetch(API + '/api/login', {
|
|
method: 'POST',
|
|
headers: { 'Content-Type': 'application/json' },
|
|
body: JSON.stringify({ username: user, password: pass })
|
|
});
|
|
const data = await res.json();
|
|
if (!res.ok) { document.getElementById('loginError').textContent = data.error; return; }
|
|
token = data.token;
|
|
username = data.username;
|
|
localStorage.setItem('token', token);
|
|
localStorage.setItem('username', username);
|
|
showPage('homePage');
|
|
} catch (e) {
|
|
document.getElementById('loginError').textContent = '网络错误';
|
|
}
|
|
}
|
|
|
|
function doLogout() {
|
|
token = null;
|
|
username = null;
|
|
localStorage.removeItem('token');
|
|
localStorage.removeItem('username');
|
|
showPage('loginPage');
|
|
}
|