본문 바로가기

웹 프로그래밍/Servlet

[Servlet] 기초(2)

요청 방식

요청 방식이 두가지가 있다. 

- 일반적인 모든 요청 방식은 모두 get 방식이다.

- form 태그를 이용해서 사용자가 입력한 정보를 입력해서 action이 가리키는 곳으로 이동한다. 이런 경우 post 방식이다. (post 방식의 요청은 form 태그를 이용해서만 가능하다)

 

 

 

사용방법 (get 방식)

캘린더 조회하고싶습니다.

/캘린더조회?name=A

/캘린더조회?name=B

/캘린더조회?name=C

 

로그인 하겠습니다.

/로그인?id=A&password=1111

==> 여러개를 보낼 때 구분자는 &를 사용한다.

 

? 아래를 query 라고합니다.

그런데, 아래처럼 정보를 보내니까 보안에 아주 안좋은 것이다. 이런 내용을 누가 가로채면, 바로 보안이 뚫리는 것이다.

 

사용방법(post 방식)

body에 내용이 담겨서 가기 때문에, url에 정보가 나타나지 않는다.

요청할 때 url에 정보를 보이지 않기 때문에 보안에 좋다.

(form 태그를 이용해서만 가능하다)

 

 

 

그런데, 사용자가 어떤 방식으로 보냈는지 어떻게 알아?

그 정보는 request 매개변수가 가지고 있다.

 

JAVA를 수정하면 반드시 톰캣을 리스타트 해야한다. 그래야 수정된 파일이 톰캣으로 복사된다(?)

 

 

주의점

get 방식 : form 태그만 가능하다.

post 방식 : form 태그를 포함한, 모든 태그가 가능하다.

 

(form태그는 get 방식, post 방식 둘 다 쓸 수 있다. 이외의 모든 태그는 get 방식만 쓸 수 있다.)

 

 

 

사실은 한글은 3바이트 단위로 쪼개서 날라간다. 크롬에서는 그냥 한글로 보여주는 것 뿐이고, 실제로는 한글자에 3바이트로 날라간다. 익스플로러에서 열면 그대로 보인다.

 

'웹 프로그래밍 > Servlet' 카테고리의 다른 글

[Servlet] doGet VS doPost 차이  (0) 2020.07.13