Code States 136

[0323] HTTP - HTTPS

학습 목표 쿠키의 작동 원리를 이해할 수 있다 HTTP 헤더의 역할에 대해 이해할 수 있다. 표현, 콘텐츠 협상 등 다양한 헤더의 역할에 대해 알 수 있다. REST API에 대해 이해할 수 있다. REST API 문서를 읽을 수 있다. REST API에 맞춰 디자인할 수 있다. HTTPS의 개념을 이해할 수 있다. HTTP와 HTTPS의 차이점을 이해할 수 있다. Hyper Text Transfer Protocol Secure Socket layer HTTP over SSL(TLS), HTTP over Secure라고 부르기도 함 HTTP 요청을 SSL 혹은 TLS 알고리즘을 이용해 HTTP 통신을 하는 과정에서 내용을 암호화하여 데이터를 전송하는 방법 브라우저가 응답과 함께 전달된 인증서 정보를 확인..

Code States/TIL 2023.03.23

[0323] HTTP - REST API 문서 작성

학습 목표 쿠키의 작동 원리를 이해할 수 있다 HTTP 헤더의 역할에 대해 이해할 수 있다. 표현, 콘텐츠 협상 등 다양한 헤더의 역할에 대해 알 수 있다. REST API에 대해 이해할 수 있다. REST API 문서를 읽을 수 있다. REST API에 맞춰 디자인할 수 있다. HTTPS의 개념을 이해할 수 있다. HTTP와 HTTPS의 차이점을 이해할 수 있다. API 디자인의 선행 과정 관계형 데이터 모델링 REST API는 데이터나 자원을 HTTP URI로 표현하는 것이 목표 어떤 리소스를 요청/응답으로 주고 받을 것인가? 해당 리소스에는 어떤 내용을 포함하는가? 전달 과정에 필요한 데이터를 디자인 하는 이러한 과정은 큰 틀에서 데이터 모델링의 한 부분으로 볼 수 있음 여러 개의 표 형식으로 정의..

Code States/TIL 2023.03.23

[0323] (페어) HTTP - REST API 문서 작성

블로그에 필요한 데이터 모델을 디자인하세요. 블로그 글(Article), 댓글(Comment)에 필요한 필드와 각 필드의 자료형이 무엇인지 정하세요. 스프레드시트로 정리되면 간편합니다. 필드 Article title / string body / string author / string Comment author / string body / string article 필드 comment 필드 2. 스프레드시트로 작성한 데이터 모델을 Sheety와 연동하세요. sheety에서 new project 생성 후 스프레드시트 연동 GET 요청 테스트 3. Sheety를 통해 블로그에 필요한 API 명세 및 요청/응답을 확인하세요. 블로그에는 다음과 같은 기능을 필요로 합니다. 조회 블로그 글 전체 조회 특정 블로그..

Code States/TIL 2023.03.23

[0322] HTTP - 잘 설계된 HTTP API (REST API)

학습 목표 쿠키의 작동 원리를 이해할 수 있다 HTTP 헤더의 역할에 대해 이해할 수 있다. 표현, 콘텐츠 협상 등 다양한 헤더의 역할에 대해 알 수 있다. REST API에 대해 이해할 수 있다. REST API 문서를 읽을 수 있다. REST API에 맞춰 디자인할 수 있다. HTTPS의 개념을 이해할 수 있다. HTTP와 HTTPS의 차이점을 이해할 수 있다. REST API란? REST: Representation State Transfer 웹에서 사용되는 데이터나 자원을 HTTP URI로 표현하고, HTTP 프로토콜을 통해 요청과 응답을 정의하는 방식 성숙도 모델에는 0~3단계까지 있으며, 이를 모두 충족해야 REST API라고 불림 그러나 엄밀하게 3단계까지 지키기 어렵기 때문에 2단계까지만 ..

Code States/TIL 2023.03.22

[0322] HTTP - HTTP 헤더

학습 목표 쿠키의 작동 원리를 이해할 수 있다 HTTP 헤더의 역할에 대해 이해할 수 있다. 표현, 콘텐츠 협상 등 다양한 헤더의 역할에 대해 알 수 있다. REST API에 대해 이해할 수 있다. REST API 문서를 읽을 수 있다. REST API에 맞춰 디자인할 수 있다. HTTPS의 개념을 이해할 수 있다. HTTP와 HTTPS의 차이점을 이해할 수 있다. HTTP 헤더 HTTP 메시지는 헤더와 바디로 구분 바디에서는 데이터 메시지 본문(Message boddy)을 통해 표현(Representation) 데이터를 전달하며, 여기서 데이터를 실어나르는 부분을 페이로드(Payload, 메시지 본문)라고 함 표현은 요청이나 응답에서 전달할 실제 데이터를 뜻함 헤더 형식 : 필요시 임의의 헤더 추가 가..

Code States/TIL 2023.03.22

[0322] HTTP - Cookie

학습 목표 쿠키의 작동 원리를 이해할 수 있다 HTTP 헤더의 역할에 대해 이해할 수 있다. 표현, 콘텐츠 협상 등 다양한 헤더의 역할에 대해 알 수 있다. REST API에 대해 이해할 수 있다. REST API 문서를 읽을 수 있다. REST API에 맞춰 디자인할 수 있다. HTTPS의 개념을 이해할 수 있다. HTTP와 HTTPS의 차이점을 이해할 수 있다. 어떤 웹사이트에 들어갔을 때, 서버가 일방적으로 클라이언트에 전달하는 작은 데이터 서버가 웹 브라우저에 정보를 저장하고 불러올 수 있는 수단 해당 도메인에 대해 쿠키가 존재하면, 웹 브라우저는 도메인에게 http 요청 시 쿠키를 함께 전달 쿠키를 이용하는 것은 단순히 서버에서 클라이언트에 쿠키를 전송하는 것만 의미하지 않고, 클라이언트에서 서..

Code States/TIL 2023.03.22

[0321] (페어) Git과 버전 관리 시스템 - Simple Git Workflow

페어 프로그래밍을 위한 Git Workflow 를 실습을 통해 이해합니다. GitHub를 사용하여 fork, clone, push 하는 흐름을 알아봅시다. Bare minimum requirements 영상처럼 드라이버와 내비게이터의 역할을 번갈아가며 작업 기록(commit)을 제출(push)합니다. 한 사람당 최소 한개의 커밋이 있어야 합니다. pair가 fork한 repo로부터 pull하여 pair programming을 위한 Git Workflow을 익힙니다. Local Repository의 코드가 상대방의 코드와 동기화가 되어야 합니다. 서로 동일한 라인을 수정하고 push 및 pull하여 파일이 서로 충돌하는 상황을 연출하고, 충돌을 해결합니다. 서로의 코드를 동기화한 후, remote repo..

Code States/TIL 2023.03.21

[0321] Git과 버전 관리 시스템 - Git Branch

Git Branch 브랜치란? 독립적으로 어떤 작업을 진행하기 위한 개념 각각의 브랜치는 다른 브랜치의 영향을 받지 않기 때문에, 여러 작업을 동시에 진행할 수 있음 장점 한 소스코드에서 동시에 다양한 작업을 할 수 있게 해줌 소스코드의 한 시점과 동일한 상태를 만들고, 브랜치를 넘나들며 작업을 수행할 수 있음 각각의 브랜치에서 생긴 변화가 다른 브랜치에 영향을 주지 않고 독립적으로 코딩을 진행할 수 있음 분리된 작업 영역(브랜치)에서 변경된 내용들은 다른 브랜치와 병합함으로써 다시 새로운 하나의 브랜치로 모을 수 있음 통합 브랜치(Intergration Branch) 배포될 소스 코드가 기록되는 브랜치 해당 프로젝트의 모든 기능이 정상적으로 작동하는 상태의 소스코드가 담겨 있음 피처 브랜치(Featur..

Code States/TIL 2023.03.21

[0320] Git과 버전 관리 시스템 - Git

Achievement Goals 상황에 따라 Github의 기능과 Git 명령어를 사용할 수 있다. Fork clone status restore add commit reset log pull push init remote add remote -v Git의 세 가지 영역 및 상태를 이해할 수 있다. (Committed, modified, staged) Remote Repository를 페어와 공유하며 협업을 할 수 있다. 충돌이 발생했을 경우 해결할 수 있다. Advanced Challenge (optional) Git Repository의 commit되지 않은 변경 사항을 취소할 수 있다. reset HEAD checkout -- 협업을 위한 git 개념을 이해할 수 있다. branch, merge의 ..

Code States/TIL 2023.03.20

[0320] Git과 버전 관리 시스템 - 개발자 도구 Git 설치

Achievement Goals 자신이 사용하는 OS에 git 설치하는 방법을 익히고 실습한다. git --version 명령어로 터미널에서 git이 설치되었는지 확인할 수 있다. CLI 환경에서 git 명령어를 입력할 수 있다. Advanced Challenge 터미널로 원격 서버에 접속하고 git을 설치하고 삭제 후 다시 설치할 수 있다. macOS Git 설치 터미널에서 git 명령어 실행 후 설치 git —version 명령어로 버전 확인 Git 환경설정 사용자 정보 등록 설정에 기록된 사용자 이름과 메일 주소를 앞으로 진행할 Git 커밋 내역에 기록 git config —global user.name “Github 사용자 이름” git congif —global user.email “Github..

Code States/TIL 2023.03.20