목록Today I Learn (82)
나만의 작은 도서관
오늘 배운 내용 같은 RDB여도 각 데이터베이스가 사용하는 SQL문은 다르다Prisma와 같은 ORM을 사용하는 이유를 공부하던 도중, ORM을 사용하면 다른 데이터베이스로 옮겨가는 것이 편리해진다는 내용을 알게되었다. 그런데 공부할때까지만 해도 모든 데이터베이스가 SQL문을 사용하니 전부 동일한 쿼리문을 가지고 있을거라 생각했었는데, 그렇지 않았다. 간단한 예시로 아래와 같은 차이점이 있다. -- 자동 증가 필드. -- mysql에서는 auto_increment를 사용하면 되지만 oracle은 더욱 복잡하고 길게 SQL문을 짜야한다.-- MySQLCREATE TABLE example ( id INT AUTO_INCREMENT PRIMAR..
오늘 배운 내용 yarn remove yarn add를 통해서 추가한 패키지는 yarn remove를 통해 제거할 수 있다. yarn remove 명령어는 devDependencies와 상관없이 패키지를 삭제한다.// prettier 패키지 삭제yarn remove prettier npx prisma db push --schema 옵션schema를 2개 이상 사용하는 경우, 각 schema에 따른 DB push가 이루어져야 한다. 이 때 그냥 npx prisma db push를 하게 되면 schema가 2개이기 때문에 원하는 결과가 나오지 않는다. 그렇기 때문에 --schema 옵션을 이용하여 push할 schema를 명시해야한다.// pr..
오늘 배운 내용 요청 헤더에 속성을 추가하면 다음 미들웨어에서 해당 속성을 사용할 수 있다.express를 사용하다보면 미들웨어가 줄줄이 연결되어 있는 경우가 자주 있는데, 이 때 이전 미들웨어에서 계산한 결과값을 다음 미들웨어가 사용하고 싶은 경우가 발생하기도 한다. 이럴 때 이전 미들웨어에서 요청의 헤더 속성으로 지정해 저장을 하게 되면 다음 미들웨어부터 해당 속성으로 값에 접근이 가능하다.// 인증 미들웨어(auth)export default async function (req, res, next) { // 토큰이 유효한지 테스트 . . . // 토큰이 유효하다면, req.account에 사용자 정보를 저장합니다. ..
이번 주 배운 내용 AWS의 RDS 개념과 역할Prisma의 autoincrement()mysql의 show tablesORM 개념과 필요한 이유Prisma란?Prisma: select 구문 사용법+연산자를 이용한 형변환Prisma에서 scheme사용법yarn install --production 명령어Http Mehod중 PUT과 PATCH의 차이점SHA-256, SHA-3 해시함수의 취약점과 bcrypt, Argon2 + salt에 대해서쿠키, 세션, JWT의 개념 및 작동방식jsonwebtoken 라이브러리의 sign() 함수크롬 브라우저에서 요청 헤더 정보 보기트렌젝션이란?이번 주 한 일 RDS에 데이..
오늘 배운 내용 jsonwebtoken 라이브러리의 sign() 함수jsonwebtoken 라이브러리의 sign() 함수는 jwt토큰을 발급받기 위한 함수이다. sign() 함수는 매개변수 2개를 요구하는데, 첫번째 param으로 payload(넣고자 하는 데이터), 두번째 param으로 key를 입력하면된다. 기본적인 사용방법에 대한 예시는 다음과 같다.// jwt.sign(payload, secretOrPrivateKey, [options, callback])jwt.sign("email@gmail.com", "secretKey"); 만약, 각 param에 여러 데이터를 넣고 싶다면 객체 형태로 넣어주면 된다.// jwt.sign(payl..
오늘 배운 내용 쿠키쿠키는 사용자가 웹 사이트를 방문할 때마다 이전에 방문했던 정보를 기억하는 데이터 파일이다. 쿠키는 세션ID, 만료일, 유효 도메인 등의 정보를 가지고 있으며, 서버에 존재하는 세션에 접근할 수 있도록 하는 신분증과 같은 역할을 한다,// 쿠키는 Set-Cookie를 통해 설정한다.Set-Cookie: sessionId=abc123; Expires=Wed, 23 Jun 2024 10:00:00 GMT; Path=/; Domain=.example.com; Secure; HttpOnly 세션세션은 쿠키를 기반하고 있지만, 사용자 정보 파일을 브라우저에 저장하는 쿠키와 달리 세션은 서버 측에서 관리한다. 세션의 동작 방식클라이..