CS

bomb·2023년 9월 11일

[Restful API]

  1. REST(Respresentational State Transfer)란 ?
  • HTTP를 기반으로 필요한 자원에 접근하는 방식을 정해놓은 아키텍처
  1. API(Application Programming Interface)란 ?
  • 소프트웨어 애플리케이션들이 서로 상호 작용하고 통신할 수 있도록 정의된 규칙과 프로토콜의 집합

RESTful API 란 ? : REST API를 제공하는 웹 서비스를 RESTful 하다고 할 수 있다.

  1. REST 중심규칙 : HTTP URI를 통해 자원(Resource)을 명시하고,
    HTTP Method(POST, GET, PUT, DELETE, PATCH 등)를 통해
    해당 자원(URI)에 대한 행위를 정의하는것이 REST한 API를 설계하는 중심 규칙입니다.

  2. REST 구성요소 : 자원 + 메서드(HTTP) + 메시지(HTTP header, body, 응답 상태 코드)

  3. 특징

  • server, client 구조
  • StateLess(무상태)
  • 캐시 처리 가능
  • 계층화(API 서버는 순수 비즈니스 로직을 수행하고 그 앞단에 보안, 로드 밸런싱, 사용자 인증 등 다중 계층으로 구성될 수 있다.)
  • 인터페이스의 일관성 : 특정 언어나 기술에 종속되지 않음.

[JAVA WEB]

  1. jsp와 servlet의 차이점은 무엇인가요
    • 공통점 : Java 웹 애플리케이션 개발에 사용되는 기술
    • 차이점 : JSP - JSP는 Java 코드를 HTML 문서 안에 삽입하여 동적 웹 페이지를 생성하는 데 사용됩니다.
      Servlet - Java 클래스로 작성된 웹 애플리케이션의 컨트롤러 역할을 합니다(웹 요청의 로직 처리를 담당).
  2. 세션과 쿠키의 차이는 무엇인가요?
  • 공통점: 웹 애플리케이션에서 사용자의 상태 정보나 설정 등을 저장하고 관리하기 위한 메커니즘

  • 차이점
    - 쿠키는 사용자의 브라우저, 세션은 서버에 저장
    - 쿠키는 브라우저에 저장되어 중간에 데이터가 탈취될 위험이 크다, 세션은 서버에 저장되서 안전하긴 하지만, 세션 ID가 노출되면 위험할 수 있기 때문에, 보안을 강화하기 위해 HTTPS 등의 암호화 방식을 사용하는 것이 좋다
    - 주로 쿠키는 사용자의 로그인 상태 유지, 세션은 사용자별 정보 저장 (로그인 정보, 장바구니 정보)에 사용됨.

  1. 세션 과정을 설명해주세요.
  • 클라이언트가 처음으로 요청을 보낸다.
  • 서버는 세션 ID를 발급한다.
  • 클라이언트에 세션 ID가 저장된 쿠키를 보낸다.
  • 이 후 클라이언트가 추가 요청을 보낼 때 (페이지 이동, 데이터 요청 등), 클라이언트는 쿠키를 서버에 같이 보낸다.
  1. SQL Injection을 피할 수 있는 방법을 설명해주세요.
  • ORM기술을 사용한다.

0개의 댓글