728x90
GitHub https://github.com/100space/friday_local GitHub - 100space/friday_local Contribute to 100space/friday_local development by creating an account on GitHub. github.com STEP 1. 회원가입 및 로그인 구현하는 목표가 주어졌고, 협업을 위한 기본 라우터를 설계하고 문서화하는 작업을 함. 라우터를 설계하면서 DB 테이블도 설계한 후에 문서로 남겨놓았다. 흔히 api document 라고 하는 것을 해보려 했는데 처음해보는 거라 어떻게 얼마나 적어둬야 하는 몰라서 간단하게만 적어봤다. 나는 front-end 영역을 맡았다. STEP 2. 메인페이지 구성 및 gnb를 만들..
오늘 내가 배운 것 1. 카카오 로그인 공식 사이트 2. 카카오 로그인 API 3. 사전준비 4. 카카오 로그인 구현하기 프론트 서버 백 서버 1. 카카오 로그인 공식 사이트 https://developers.kakao.com/docs/latest/ko/kakaologin/common Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com 카카오 로그인은 API를 이용해서 하는 것인데 위에 공식 사이트에서 자세히 잘 나와있다. 2. 카카오 로그인 API 기본 흐름은 아래와 같다. 3. 사전 준비 카카오 로그인을 위해서 사전에 준비해야 해야 할 단계가 몇..
오늘 내가 배운 것 1. 내장 모듈 crypto 2. JWT - Signature 3. JWT - 토큰 만들기 4. JWT - 토큰 검증하기 1. 내장 모듈 crypto Node.js의 내장 모듈이기 때문에 require 해서 사용해야 한다. crypto는 클래스이다.. const crypto = require("crypto") const salt = process.env.SALT || "web7722" const hash = crypto.createHmac(`sha256`, salt).update(평문).digest("hex") // createHmac은 `정적메서드`다. JWT에서 Signature을 만드는 목적이 headerd와 payload가 위조, 변조되었는지 확인하기 위해서인데, salt값이 ..
오늘 내가 배운 것 1. 인코딩(Encoding)과 디코딩(decoding) 2. Base64 3. JWT 인코딩 구현해 보기 1. 인코딩(Encoding)과 디코딩(decoding) 1-1. 인코딩(Encoding) 인코딩은 어떤 정보나 데이터를 다른 형태, 형식으로 변환하는 과정을 말한다. 인코딩을 하면 데이터를 표준화하거나 데이터의 처리속도를 향상할 수 있고 저장공간을 절약할 수 있는 장점이 있다. 우리가 눈으로 확인할 수 있는 동영상이나 사진들도 인코딩해서 데이터를 주고받는다. 인코딩의 반대말은 디코딩이다. 1-2. 디코딩(Decoding) 디코딩은 인코딩과 반대되는 개념으로 , 전달받은 숫자 또는 문자로 된 데이터들을 사용자가 문자나, 실제 동영상으로 볼 수 있게 해석하는 역할을 말한다. 인코딩..
오늘 내가 배운 것 1. Cookie Cookie Cookie 동작방식 Cookie 단점 2. Session Session Session 동작방식 Session 단점 Cookie VS Session 3. JWT JWT 기본 JWT 구조 Header의 알고리즘 4. 암호화 단방향 암호화 양방향 암호화 대칭키 비대칭키 cookie 또는 session을 이용하여 식별, 로그인 기능을 구현했었다. Cookie와 Session에 대하여 다시 정리해보려 한다. 그전에 HTTP 통신에 대한 기본적인 특징을 말하자면 1. HTTP 통신은 한 번의 요청에 한 번의 응답이 오고, 요청과 응답이 주고받은 후 연결을 끊는 특징이 있다. (비연결성 - Connectionless) 1-1. 비연결성의 장점은 하나의 서버에 여러 ..
오늘 내가 배운 것 1. Primary Key 2. 데이터 타입 ENUM 3. Model을 이용한 테이블 만들기 4. Liked 5. 관계형을 위한 정적 메서드 1. Primary Key 기본적으로 PK는 테이블당 1개만 부여 가능하다고 알고 있었다. CREATE TABLE person( first_name VARCHAR(30) NOT NULL, last_name VARCHAR(30) NOT NULL, PRIMARY KEY (first_name, last_name) ); 위에 코드처럼 Primary Key에 두 개의 필드를 적고, 실행을 하면 가능할까? 일단 실행이 가능하다. INSERT INTO person(first_name, last_name) VALUES(1, 1) first_name에 1이 들어..