• 카테고리

    질문 & 답변
  • 세부 분야

    웹 개발

  • 해결 여부

    미해결

200, 201, 302상태코드에 대해 질문 있습니다.

22.04.28 21:44 작성 조회수 370

0

졸업프로젝트 진행 중 상태코드에 대한 질문이 있어 남기게 되었습니다.

깃허브가 작동하는 방식을 살펴보았는데, 이슈의 댓글 생성시에 201대신 200코드를 반환하는 것으로 파악했습니다. 

 

(https://developer.mozilla.org/ko/docs/Web/API/Location)

200과 201코드의 차이점은 location응답헤더의 유무인 것으로 알고 있는데, 댓글 생성시에는 새로운 자원(댓글)이 만들어지지만 생성된 이후에 페이지 자체는 변하지 않기 때문에 location이 없는 200 상태코드가 오는 것으로 생각했습니다.

이슈가 생성될 때에는 이슈페이지로 이동하게 되지만 201대신 302를 통해서 리다이렉트하는 방식을 사용하고 있더군요.

(네이버와 티스토리도 분석해본 결과)결과적으로 페이지를 이동하든, 이동하지 않든 생성시에 201을 사용하는 곳은 아무데도 없었습니다.

이런 사이트들은 어떤 규칙을 지키는지, 201 상태코드가 실제로 사용되는 부분은 어떤 곳인지 궁금합니다!! 감사합니다!!

답변 1

답변을 작성해보세요.

0

David님의 프로필

David

2022.05.01

안녕하세요. Tallmurf님, 공식 서포터즈 David입니다.

1. 201 상태코드더라도 location정보가 없을 수도 있습니다. 해당 문서를 참고해주세요.

2. 깃헙 리포지토리의 프로젝트 항목에 item을 추가하면 201로 응답합니다.

3. 이슈 생성시 생성 후 바로 생성한 이슈페이지로 이동하는 게 적절한 UX라고 생각한다면 201 상태코드 대신 302 상태코드를 전달하여 클라이언트(브라우저)가 바로 location헤더의 값(위치)으로 이동할 수 있게 할 수 있습니다.

감사합니다.

Tallmurf님의 프로필

Tallmurf

질문자

2022.05.02

Item이 혹시 새로운 프로젝트를 말씀하시는건가요?? 프로젝트 생성시에는 302가 column, card생성시에는 200이 오는 것 같습니다,,

David님의 프로필

David

2022.05.02

프로젝트 생성이 아니라 프로젝트 내에서 Item 생성하는 부분이 따로 있습니다.

아래 이미지 참고해주세요.