[네트워크] HTTP와 HTTPS의 특징과 차이점
·
개발 하나둘셋/CS
개념정리 HTTP와 HTTPS HTTP(Hyper Text Transfer Protocol) HTTP의 개념 서버/클라이언트 모델을 따라 데이터를 주고 받기 위한 프로토콜 HTTP는 인터넷에서 하이퍼텍스트를 교환하기 위한 통신 규약으로, 80번 포트를 사용한다. HTTP 서버가 80번 포트에서 요청을 기다리고 있으며, 클라이언트는 80번 포트로 요청을 보내게 된다. WWW(World-Wide-Web) 기반에서 세계적인 정보를 공유하는데 큰 역할을 하였다. * 프로토콜 : 컴퓨터 내부에서, 또는 컴퓨터 사이에서 데이터의 교환 방식을 정의하는 규칙체계. 기기간 통신은 교환되는 데이터의 형식에 대해 상호 합의를 요구하는데 이런 형식을 정의하는 교칙의 집합 HTTP의 구조 1. HTTP Request(요청) 구..
[네트워크] REST API와 HTTP 메소드정리
·
개발 하나둘셋/CS
개념정리 REST API와 HTTP 메소드정리 REST(Representational State Transfer) API REST API의 기본개념 [REST] URI를 통해 자원을 표시하고, HTTP Method를 이용하여 해당 자원의 행위를 규정하여 그 결과를 받는 것 - 자원(Resource): URI - 행위(Verb): HTTP Method - 표현(Representations) [REST API] 데이터와 기능의 집합을 제공하여 컴퓨터 프로그램간 상호작용을 촉진하며, 서로 정보를 교환가능 하도록 하는 것 REST 기반으로 서비스 API를 구현한 것 REST API의 특징 REST 기반으로 시스템을 분산해 확장성과 재사용성을 높여 유지보수 및 운용을 편리하게 할 수 있다. REST는 HTTP 표..
객체지향 프로그래밍
·
개발 하나둘셋/CS
개념정리 객체지향 프로그래밍이란? 자바에 대해 공부한 내용으로 자바의 정석 도서를 참고하였다. 1. 객체지향 언어의 역사 탄생 배경 : 모의실험을 위해 실제 세계와 비슷한 가상 세계를 컴퓨터 속에 구현 하고자 객체지향이론이 필요 개념 : 실제 세계는 사물(객체)로 이루어져 있으며, 발생하는 모든 사건들은 사물간의 상호작용이다 발전 : 상속, 캡슐화, 추상화 개념을 중심으로 점차 구체적으로 발전, 1960년대 중반 객체지향이론을 프로그래밍언어에 적용한 시뮬라(Simula)라는 최초의 객체지향언어 탄생 프로그램의 규모가 점점 커지고 사용자들의 요구가 빠르게 변화해가는 상황에 대한 대안으로 객체지향언어를 이용, 입지가 넓혀짐 2. 객체지향 프로그래밍 프로그램을 다수의 객체로 만들고, 이들끼리 서로 상호작용하도..
[네트워크] 회원가입, 로그인기능 (해시함수 / JWT)
·
개발 하나둘셋/CS
개념정리 회원가입, 로그인기능 (해시함수 / JWT) 1. 해시함수(암호화 알고리즘) 알고리즘의 한 종류로서 임의의 데이터를 입력 받아 항상 고정된 길이의 임의의 값으로 변환해주는 함수 해시함수 SHA256은 어떤 길이의 입력값을 넣어도 항상 256바이트의 결과값이 나옴 동일한 입력값은 항상 같은 결과값이 나오고, 입력값은 조금이라도 달라지면 완전히 다른 값이 나오게되며, 결과값을 통해 입력값을 알아내는 것이 불가능 [ 회원가입 API ] post로 id, pw, nickname을 받아서, mongoDB에 저장 저장하기 전에, pw를 sha256 방법(=단방향 암호화. 풀어볼 수 없음)으로 암호화해서 저장 @app.route('/api/register', methods=['POST']) def api_r..
[네트워크] jinja2, API
·
개발 하나둘셋/CS
개념정리 jinja2 / API / 해시함수 / JWT 1. jinja2 Jinja2는 python flask 패키지에 내장된 템플릿 엔진이다. 개발자가 동적으로 변하는 웹 페이지를 쉽게 구현할 수 있도록 도와준다. 고정적으로 출력되어야 할 서식 html코드가 존재하고 동적으로 변해야할 자리는 jinja2문법으로 비워둔다. 이후 클라이언트가 웹 브라우저를 통해 엔드포인트에 접근하면 아까 비워둔 자리에 값을 설정하여 클라이언트에게 출력한다. 이처럼 고정적인 행위와 변해야할 행위를 쉽게 처리 할 수 있다는 장점이 있다. flask에 포함되어 있는 jinja를 사용 jinja의 template을 만드는 문법으로 flask의 render_template을 이용해서 data를 넘겨주고 html에서 해당 문법으로 ..
유리코딩
'개발 하나둘셋/CS' 카테고리의 글 목록 (2 Page)