용어 정리

y___h·2023년 4월 19일
0

👉🏻 프로토콜 : 네트워크 통신 규약

  • 인터넷에서 사용하는 TCP, IP
  • 웹에서 사용하는 HTTP(서버와 클라이언트가 서로 소통할 때 지켜야할 규약)
  • 파일을 주고 받을 때 사용하는 FTP

👉🏻 파싱 : 브라우저가 코드를 이해하고 사용하기 쉬운 구조로 변환하는 것

👉🏻 DOM : HTML 페이지를 구조화해서 계층으로 표현한 개념으로, 최상단 루트인 HTML 태그로 시작해서 페이지에 대한 각 요소가 노드로 만들어짐

👉🏻 viewport(뷰포트) : display 상의 표시 영역

👉🏻 API : 응용 프로그램에서 사용할 수 있도록 운영체제나 프로그래밍 언어에서 제공하는 기능을 제어할 수 있게 해주는 인터페이스

👉🏻 API, REST API

  • API : 응용 프로그램에서 사용할 수 있도록 운영체제나 프로그래밍 언어에서 제공하는 기능을 제어할 수 있게 해주는 인터페이스
    - DOM APIs, Location APIs, contextAPIs 등 라이브러리나 프레임워크에서 제공하는 기능을 API라고 부르기도 함.

  • REST API : HTTP 요청을 할 때 어떤 URI에 어떤 method를 사용할지에 대한 약속
    - 이를 통해 각 요청이 어떤 정보나 동작을 위한 것인지 그 모습 자체만으로 추론이 가능하다는 장점
    - 인터넷 식별자인 URI와 HTTP를 기반으로 하고, 브라우저 간 호환성이 좋은 JSON 형식을 주로 사용
    - swagger-ui : REST API를 문서화하는 툴, 프론트엔드와 백엔드가 협업할 때 자주 사용

👉🏻 HTTP vs HTTPS, SSL vs TSL
HTTPS는 HTTP에 Secure을 붙여 HTTP에서의 통신을 안전하게 보호하기 위해 보안이 추가된 것 웹상에서 인터넷 뱅킹, 신용카드 관련 서비스, 개인정보 등록 수정하는 경우처럼 보안이 필요한 경우를 위해 HTTPS가 개발되었다.

  • HTTP : 하이퍼 텍스트를 전송하기 위해 만들어진 약속
  • 암호화하지 않았기 때문에 도청 당할 수 있다. 통신 경로 상에 있는 네트워크 기기나 케이블 컴퓨터와 같은 기기를 통해 도청할 수 있다.
  • 통신 상대를 확인하지 않기 때문에 신뢰성이 떨어진다. HTTP는 어느누가 요청을 보내와도 응답을 해주는 구조인데, 요청을 보내는 client에 대한 확신이 없다는 뜻. 응답해주는 서버에 대한 확신도 없다. 내가 의도한 서버인지 알 수 없다는 뜻. 이로 인해 정보에 대한 정확성이 떨어지고 서버와 클라이언트가 보낸 정보를 누군가 바꿀 위험이 발생한다.
    • HTTPS : SSL이라는 암호화 기반 인터넷 보안 프로토콜을 이용한 HTTP 통신 방식이다.
      • 인터넷 통신에 개인정보 보호, 인증, 데이터 무결성을 위해 개발되었다. HTTPS를 쓰면, 보안성 우위에 있게 된다.
      • 검색엔진 최적화에도 도움을 받을 수 있다. 구글에서 권장하여, HTTPS 페이지에 검색순위 결과에 약간의 가산점을 주겠다고 하였음. 또한, 구글에서 HTTP에서 진행되는 다운로드를 점차 차단할 계획이라고 발표한 바 있다.
    • SSL vs TSL
      • TSL : SSL을 발전 시킨 것으로 더 많은 개인정보 보호 및 보안 기능이 추가된 암호화 프로토콜
      • 둘을 구분하기도 하지만, SSL의 취약점을 보완하고자 참고해서 표준화 시킨 것이 TLS이므로 기능과 용도가 같아서 SSL / TLS 이렇게 붙여서 사용하기도 함.

👉🏻 클라이언트 / 서버 모델
네트워크의 기본적인 구조로, ‘클라이언트’와 ‘서버’로 이루어져있다.

  • 브라우저에 naver.com을 치면, 브라우저에서 인터넷을 거쳐서 서버로 요청이 감. 서버(naver)는 클라이언트에게 응답을 보냄.
  • 즉, 클라이언트가 요청하면, 서버는 응답하는 구조
  • 브라우저/프론트엔드 : 클라이언트, 백엔드 : 서버
profile
기록 이사중 🐣

0개의 댓글