작성
·
300
·
수정됨
0
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)
[질문 내용]
몇번을 돌려봐도 강의 내용 6분5초 부분부터 이해가 안가서 질문드립니다...
리소스의 URI가 영구적으로 이동해서 영구 리다이렉션이 발생하는것이 301 인데, 클라이언트가 /event로 해서 웹브라우저에서 치고 들어오면 이벤트 화면에서 이벤트 사용자 등록을 하기위해 데이터입력을 하고 POST를 사용해서 POST /event 를 서버에 보낼수가 있나요?
애초에 클라이언트가 /event라고해서 웹브라우저에서 치고들어오는 순간에 GET /event를 서버에 보내서 리다이렉트가 되어 /new-event html화면으로 되지않나요 ?
이렇게 리소스의 URI가 이미 영구적으로 이동한 상태인데 POST /event가 어떻게 가능한지 질문드립니다.
답변 1
0
안녕하세요. gomdole03님, 공식 서포터즈 David입니다.
아마 이벤트 신청 페이지를 GET /event 를 통해 접근하는 걸로 생각하신 것 같습니다.
다만, 강의 내에서는 이벤트 신청 페이지에 접근하기 위해 어떤 주소로 요청하는지 나와있지 않습니다.
따라서 이벤트 신청 페이지를 GET /event 가 아닌 다른 주소로 접근(GET /event-form)했다고 생각한 뒤 신청폼을 작성하여 제출(POST /event)하는 상황을 가정하시며 강의내용을 따라가시면 될 것 같습니다.
또한 뒤이어 나오는 내용인 308 상태코드와 301 상태코드의 비교(method, body 유지)를 위해 POST /event 로 내용을 구성하신 것 같습니다.
감사합니다.
말씀하신 답변대로 이벤트 신청 페이지를 GET /event 가 아닌 다른 주소로 접근했다고 생각한 뒤 신청폼을 작성하여 제출(POST /event)하는 상황이라고 한다면 , 301상태코드에의해 리다이렉트가 되면 왜 신청폼을 작성하여 제출할때의 URI만 변경이 되어야할거같은데 이게 아닌 이벤트 신청페이지를 접근할때의 URI가 변경되어 GET / new-event를 하게되는지 의문이 들어서요 ..
구글링 및 강의를 다시들으며 정리해 봤는데,
이 예제는 이벤트신청폼(GET/ event)과 이벤트신청(POST/ event)의 URI를 동일하게하고 이벤트신청폼을 Get/ event 를 통해 들어와있는 상태에서 URI가 변경되었고 이 때 POST/ event 를 한다는 가정하에 보는것이다.
POST /event 를 하게되면 /event 가 /new-event 로 변경 되었기때문에 301상태코드를 보내고, 변경된 URI에 대해 리다이렉트 되어 GET/ new-event 를해서 이벤트신청폼을 조회하고, 다시 POST/ new-event 해서 이벤트를 신청해야한다.
이렇게 이해해도될까요 ?
답변 감사합니다. 근데 제출할때 POST/ event인데 301에러가 발생하게되면 왜 제출할때의 URI가 아닌 신청폼의 URI가 변경되는건가요?