Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2주차 미션 / 서버 1조 김상준 / 추가 제출 #25

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

drbug2000
Copy link

@drbug2000 drbug2000 commented Apr 1, 2024

첫 제출에 하지 못한 파트2 리팩토링 마무리해서 올립니다.
enum을 제외한 요구사항 마무리 했습니다

질문 1.
클라이언트에서 "/wedapp/user/signup.html"과 "/user/signup"으로 구분돼서 요청이 날아오는데,
저는 Controller를 따로 만들기 보단 한 컨트롤러에서 doGET과 doPOST로 나누어 구현한 후 HTTPMapper에서 같은 컨트롤러로 묶었습니다.

controllers.put("/", new indexController());
controllers.put("/index", new indexController());
controllers.put("/index.html", new indexController());

원래 이렇게 프론트 엔드에서 구분해서 요청이 다른 path로 오는 건지, 컨트롤러를 따로 둬야하는 건지 궁금합니다

질문 2.
1번과 이어지는 질문입니다. 완성 예제를 보면 Path와 Contorller가 mapping되지 않으면, mapper에서 바로 해당 URL에 해당하는 파일을 찾아주는 식으로 구현 되어있는데(2week/copleted branch : src/webserver/RequestMapper.java 40 번째 줄), 이렇게 구현 하면, 의도치 않은 경로로 사용자가 접근하는 등 개발자가 의도하지 않는 작동이 일어날 수 있지 않을까요?

이번 미션에서는 request에 file path가 그대로 오는 경우가 많아 위에서 말한 모범 코드처럼 Mapper에서 따로 처리하거나 따로 Controller를 만들어 한 번에 처리하면 편하지 않을까 고민했었습니다.(코드에 직접 사용되진 않은 것 같지만, ForwardController가 구현되어 있는 것도 비슷한 이유에서가 아닌가 추측했습니다).
실제 프로젝트에서도 이번 tomcat처럼 forward 경우를 따로 처리하는지, 그렇다면 실제 tomcat 내부에도 비슷한 기능이 포함 되어있는지 궁금합니다!

늦었지만 질문있어 적어봤습니다. 항상 좋은 강의와 피드백 감사드립니다

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant