spring boot study 2회차

수현·2023년 3월 14일
0

✅ 네트워크 면접 단골질문!

  • API에 대해 설명해주세요.

API(Application Programming Interface) : 한 프로그램에서 다른 프로그램으로 데이터 주고받기 위한 방법
식당 메뉴판(API) : 식당과 손님이 음식을 주고받기 위한 방법
웹툰 서비스(API) : 미리 만들어둬야한다.(예-신과함께, 이말년시리즈)

네이버 클라우드서비스
파파고 번역서비스 - 파파고 번역 API 요금 20000원/100만자
CLOVA 3줄 요약서비스 - API 호출 1회당 2원

(GET 요청) comic.naver.com/webtoon/detail ?id=318995
무슨 자료 요청할지(endpoint)

(GET 요청) comic.naver.com/webtoon/detail ?id=318995
자료요청에 필요한 추가정보 (parameter)

웹의 경우 REST API라는 원칙에 따라 작성하면 좋다.
주소창 : API 요청 코드짜는 곳(GET 요청가능)

이미지, 버튼, 제목 누르면 자동으로 API 요청해주기 때문에 평소에 코드 짤 일은 없다.

public/private/partner API
public : 누구나 사용가능한 공개 API
private : 사내에서 몰래쓰는 API
partner : 미리 정해둔 사람만 쓰는 API

  • HTTP 통신에 대해서 설명해주세요.

HTTP(Hyper Text Transfer Protocol) : 웹 브라우저가 웹 페이지를 사용자에게 보여주기 위해서 서버로 데이터를 요청하기 위한 약속
비동기적인 통신
각각의 PC에서 필요한 정보만 웹서버에 요청하면, 웹서버에서 응답을 보내주는 비동기적인 서버통신
*비동기적 처리 : 순서대로 진행하는 것이 아니라 한번에 여러개가 진행되는 방식

  • HTTP 메소드 GET과 POST의 차이에 대해서 설명해주세요.
  • GET : 서버로 요청할 때 URL에 데이터를 붙여서 전송하여 데이터를 얻는 것이 목적이다.
    요청 URL길이에 제한이 있어서 많은 데이터 전송 못함.
    전송 데이터 노출에 따른 위험이 있음.
  • POST : HTTP body에 데이터를 담아서 전송하여 서버에 데이터를 주는 것이 목적이다.
    데이터 전송 길이에 대한 제한이 없음.
    HTTP REQUEST BODY에 데이터를 담으므로 노출 안 됨.

✅ postman으로 원하는 정보를 얻을 수 있는 api 호출하기

  • 모든 post들을 조회하기


  • 2번 post 조회하기

  • 3번 post에 대한 comment들 조회하기 (2가지 방법이 있습니다. 2가지 방법 모두 실행해보세요)


[
{
"postId": 3,
"id": 11,
"name": "fugit labore quia mollitia quas deserunt nostrum sunt",
"email": "Veronica_Goodwin@timmothy.net",
"body": "ut dolorum nostrum id quia aut est\nfuga est inventore vel eligendi explicabo quis consectetur\naut occaecati repellat id natus quo est\nut blanditiis quia ut vel ut maiores ea"
},
{
"postId": 3,
"id": 12,
"name": "modi ut eos dolores illum nam dolor",
"email": "Oswald.Vandervort@leanne.org",
"body": "expedita maiores dignissimos facilis\nipsum est rem est fugit velit sequi\neum odio dolores dolor totam\noccaecati ratione eius rem velit"
},
{
"postId": 3,
"id": 13,
"name": "aut inventore non pariatur sit vitae voluptatem sapiente",
"email": "Kariane@jadyn.tv",
"body": "fuga eos qui dolor rerum\ninventore corporis exercitationem\ncorporis cupiditate et deserunt recusandae est sed quis culpa\neum maiores corporis et"
},
{
"postId": 3,
"id": 14,
"name": "et officiis id praesentium hic aut ipsa dolorem repudiandae",
"email": "Nathan@solon.io",
"body": "vel quae voluptas qui exercitationem\nvoluptatibus unde sed\nminima et qui ipsam aspernatur\nexpedita magnam laudantium et et quaerat ut qui dolorum"
},
{
"postId": 3,
"id": 15,
"name": "debitis magnam hic odit aut ullam nostrum tenetur",
"email": "Maynard.Hodkiewicz@roberta.com",
"body": "nihil ut voluptates blanditiis autem odio dicta rerum\nquisquam saepe et est\nsunt quasi nemo laudantium deserunt\nmolestias tempora quo quia"
}
]

  • post 하나 등록하기

API의 개념, HTTP 통신, GET과 POST의 차이, POSTMAN 사용법을 알게 되었다. 큰 개념은 알았지만 더 깊게 들어가니 이해가 안가기 시작했다. 꾸준히 cs지식을 공부해야겠다.

0개의 댓글