-
HTTP Request/Response & GET/POST 방식 구현프로그래밍/JSP 2022. 11. 16. 19:36728x90
HTTP는 HyperText Transfer Protocol 의 약자로, 하이퍼텍스트(HTML) 문서를 교환하기 위해 만들어진 프로토콜(통신 규약)이다. HTTP는 웹에서 이루어지는 모든 데이터 교환의 기초이며, 통상 서버와 클라이언트간 통신하는데 사용된다.
HTTP는 기본적으로 Request(요청)/Response(응답)의 구조로 되어있어, 클라이언트가 HTTP request를 서버로 전달하면 이에 서버는 HTTP response를 클라이언트에서 전달한다.
Request(요청)은 클라이언트가 서버쪽으로 요청하는 것을 의미한다. 클라이언트는 서버에 Request 하기 위해 HTTP 메소드를 사용하는데 대표적으로 GET와 POST 방식이 있다.
Response는 서버에서 요청에 대한 답변을 클라이언트쪽으로 보여주는 것을 의미하며, 전달 시 상태코드(성공 여부), 컨텐츠 타입, 컨텐츠 등을 전달하게된다.
✔ GET 방식은 URL 뒤에 전송할 데이터를 붙여보내는 방식으로 내용의 크기가 제한적이라 간단한 요청을 보낼 때 사용한다. 전송과 응답의 속도가 빠른편에 속한다.
✔ POST 방식은 데이터를 body에 넣어서 요청하기 때문에 데이터 노출의 위험이 적고 복잡한 요청을 보낼 때 사용된다. 내용 크기의 제한이 없으나 GET 방식에 비해 속도가 느린 특징이 있다.
✔ URL(Uniform Resource Locator)
네트워크 상에서 자원이 어디에 있는지 알려주기 위한 규약http://www.naver.com/blog/index.jsp
✔ URI(Uniform Resource Identifier)
URL은 자윈의 위치만 나타내는 반면, URI는 자원의 위치에 전달할 인자까지 포함하는 규약http://www.naver.com:808/blog/index.jsp?userid=apple&gender=female
클라이언트 Request 전달
1) GET 방식
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>전송방식</title> </head> <body> <!-- GET 방식 --> <p><a href="./form_ok.jsp?userid=banana&userpw=2222">데이터 보내기</a></p> </body> </html>
2) POST 방식
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>전송방식</title> </head> <body> <!--POST 방식--> <form method="post" action="./form_ok.jsp"> <p><label>아이디 : <input type="text" name="userid"></label></p> <p><label>비밀번호 : <input type="password" name="userpw"></label></p> <p><input type="submit" value="로그인"></p> </form> </body> </html>
전달받은 Request 사용하기
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <% request.setCharacterEncoding("UTF-8"); String userid = request.getParameter("userid"); String userpw = request.getParameter("userpw"); %> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>전송방식</title> </head> <body> <h2>전송방식</h2> <p>아이디 : <%=userid%></p> <p>비밀번호 : <%=userpw%></p> </body> </html>
request.getParameter로 resquest 데이터를 받아 변수에 대입한다.
728x90'프로그래밍 > JSP' 카테고리의 다른 글
AJAX (0) 2022.11.22 세션(session) (0) 2022.11.21 쿠키(cookie) (0) 2022.11.18 이클립스 톰캣 서버 설정 방법 (0) 2022.11.15 JSP(Java Server Pages) 들어가기 (0) 2022.11.14