前端安全实践:密码加密、XSS 与 CSRF 防护
引言
前端安全至关重要。例如,登录表单直接发送明文密码存在严重隐患。
常见风险示例
// 反面教材:不安全的登录
// components/LoginForm.jsx
export default function LoginForm() {
const [username, setUsername] = useState('');
const [password, setPassword] = useState('');
const handleSubmit = async (e) => {
e.preventDefault();
// 直接发送明文密码
const response = await fetch('/api/login', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ username, password }) // 明文密码
});
if (response.ok) {
// 登录成功
}
};
return (
<form onSubmit={handleSubmit}>
<input type="text" value={username} onChange= => setUsername(e.target.value)} placeholder="用户名" />
setPassword(e.target.value)} placeholder="密码" />
登录
);
}

