[이코테] 개발형 코딩 테스트에 필요한 지식

개미·2023년 3월 12일
0
post-custom-banner

본 포스트는 이것이 취업을 위한 코딩 테스트다 with python의 부록, 개발형 코딩 테스트에 필요한 지식을 정리한 내용입니다.


서버와 클라이언트

클라이언트

  • 정보를 요청(Request)하는 측이다.
  • 응답을 받은 클라이언트는 서버의 응답을 화면에 출력한다.
  • 모바일이나 게임 분야에서는 요청이 있을 때마다 그래픽 요소를 전송하기에는 이미지 파일의 크기가 크므로, 설치할 때 기본적인 그래픽 요소를 클라이언트에 다운로드 받는다. 그리고 게임을 하는 동안에는 서버와 최소한의 데이터만을 주고 받는다.

서버

  • 클라이언트에 서비스를 제공해주는 컴퓨터
  • 응답(Response)하는 측이다.
  • 정보를 생성하고 보내준다.
  • 자바 - 스프링, 파이썬 - 장고
  • 요청받은 작업을 서버 프로그램으로 실행한 후 결과를 클라이언트 프로그램에 응답으로 보내준다.

파이썬/자바스크립트로 웹 요청하기

  • HTTP: 웹상에서 데이터를 주고받기 위한 프로토콜. HTML 파일을 주고받는 데 사용.
  • 클라이언트는 웹 서버에 메서드를 이용해 요청하면 서버는 메서드를 보고 적절한 기능을 수행하도록 개발해야 한다.
HTTP 메서드의미
GET조회
POST생성
PUT수정
DELETE삭제
# 파이썬으로 웹 요청하기
import requests # 라이브러리 불러오기

target = "..." # url 작성
response = requests.get(url=target) # GET 방식으로 호출
print(response.text)

// 자바스크립트로 웹 요청하기
fetch('...', { // url 작성
    method: 'GET',
  })
  .then(response => {
    return response.json();
  })
  .then(data => {
    console.log(data);
  });

REST API 란?

REST

  • 각 자원에 대하여 자원의 상태에 대한 정보를 주고받는 개발 방식
  • 서버의 자원을 어떠한 방식으로 접근하도록 해야 하는지를 구체적으로 명시한 것.

API

  • 프로그램이 상호작용하기 위한 인터페이스
  • 서버와 클라이언트는 각각 일종의 프로그램으로 볼 수 있다.
  • 서버의 자원 경로에 들어갔을 때, 관련 정보가 나오도록 개발까지 하는 것

REST API

  • REST Architecture을 따르는 API
  1. 자원(Resource): URI를 이용하여 표현
  2. 행위(Verv): HTTP 메서드를 이용하여 표현
  3. 표현(Representations)

JSON

  • 데이터를 주고받는 데 사용하는 경량의 데이터 형식
  • 실제로 자바스크립트에서 객체를 만들 때 사용하는 표현식과 동일한 형태
  • 키-값 쌍으로 이루어진 데이터 객체를 저장

파이썬/자바스크립트로 REST API 호출 실습해보기

# 파이썬으로 REST API 호출하기

import requests # 라이브러리 불러오기

# REST API 경로에 접속하여 응답 데이터 받아오기
target = "..." # url 작성
response = requests.get(url=target) # GET 방식으로 호출

# 응답 데이터가 JSON 형식이므로 바로 파이썬 객체로 변환
data = response.json()

# 모든 사용자 정보를 확인하며 이름 정보만 삽입
name_list = []
for user in data:
	name_list.append(user['name'])

print(name_list)

// 자바스크립트로 REST API GET 메서드로 호출하기

fetch('...', { // url 작성
    method: 'GET', // fetch 함수에서 디폴트 메서드는 GET
  }) // Promise 객체를 반환하므로 then 사용 가능
  .then(response => {
    return response.json(); // 응답 데이터가 JSON 형식이므로 바로 자바스크립트 객체로 변환
  })
  .then(data => {
  //데이터 처리 부분
    console.log(data);
  });

// 자바스크립트로 REST API POST 메서드로 호출하기
fetch("...", {
  method: "POST",
  body: JSON.stringify({ // 통신할 때는 String 형태의 JSON으로 보내야 하기 때문에 
    email: id,
    password: pw,
  }),
})
  .then((response) => response.json())
  .then((result) => {
    if (result.success) {
        alert("저장 완료");
    }
  })
profile
개발자
post-custom-banner

0개의 댓글