본문 바로가기
STUDY/React

사용자 인증 자격 증명 - Authorization header

by Y.Choi 2025. 5. 7.
728x90
반응형

 

Authorization 헤더는 클라이언트 (브라우저나 앱)가 서버에 인증된 사용자라는 것을 증명하기 위해 요청할 때 사용하는 HTTP헤더이다.

 

서버는 사용자의 요청을 받을 때 이 요청을 보낸 사람이 누구인지, 권한이 있는지 알아야 하는데 AAuthorization 헤더에 포함된 토큰을 읽고 그 토큰이 유효한지 검사한다.

 

 

| Frontend에서 사용

 

axios요청에 Authorization 헤더를 추가하는 예시이다. 

const token = localStorage.getItem('token');
const res = await axios.put(
  `http://localhost:5000/api/posts/${id}`,
  { title, content },
  {
    headers: {
      Authorization: `Bearer ${token}`
    }
  }
);

 

 

| Backend에서 사용

 

서버는 미들웨어로 이 헤더를 읽어 인증을 처리한다. 아래는 Express에서 사용하는 예시이다.

const token = req.headers.authorization?.split(' ')[1]; // "Bearer abc"에서 "abc"만 추출
if (!token) {
  return res.status(401).json({ message: '토큰 없음' });
}

 

- 토큰 검증이 완료되면 해당 유저 정보를 req.user에 저장해서 이후 컨트롤러에서 사용할 수 있다.

728x90
반응형