목록dev-log/web_study (3)
채채
ERD를 재구성하고 개발을 시작했다. 문제 해결 1 가장 먼저 직면한 문제점은 사용자가 알림을 설정할 때, 장소와 물품 태그 속성을 하나만 선택하는 것이 아니라. 여러개의 값을 넣을 것인데, mySQL과 같은 RDBMS에서는 배열을 그대로 하나의 레코드에 저장할 수 없다. 왜냐하면 이는 제1정규형에 위반되므로 기본적으로 RDBMS에서 제한하기 때문이다. 이러한 문제를 해결하기 위해 배열 형태의 데이터를 String으로 변환 후 DB에 저장하고. 꺼낼 때는 String을 파싱하여 List에 담아 보내는 방법을 택하게 되었다. ref) https://inpa.tistory.com/entry/MYSQL-%F0%9F%93%9A-RDB%EC%97%90-%EB%B0%B0%EC%97%B4%EC%9D%84-%EC%A0..
1️⃣JWT 2️⃣AccessToken 3️⃣Redis 📖JWT 란? JWT는 JSON Web Token의 약어로, JSON 형식의 데이터를 저장하는 토큰이며 다음과 같이 세 부분으로 구성된다. 각 파트는 점으로 구분하며 JWT는 URI에서 파라미터로 사용할 수 있도록 URL-Safe 한 Base64url 인코딩을 사용한다. 헤더(header): 토큰 종류와 해시 알고리즘 정보 페이로드(payload): 토큰에 담을 클레임(claim, 정보의 한 조각)들을 포함 시그니처(signature): secret key를 암호화한 일련의 문자열, 시그니처를 통해 토큰이 변조되었는지 확인 참조: http://www.opennaru.com/opennaru-blog/jwt-json-web-token/ JWT (JSON..
1️⃣prisma로 schema 설계하기 2️⃣댓글 삭제 API 3️⃣댓글 조회 API 📜prisma로 schema 설계하기 project ERD 중 comment 테이블을 create했다. comment 테이블은 Users 테이블과 1:n관계이고, Posts 테이블과도 1:n관계이다. 따라서 userId와 postId를 FK로 속성을 갖는다. shema.prisma model Users { userId BigInt @id @default(autoincrement()) nickname String? @db.VarChar(10) name String? @db.VarChar(10) studentId String? @db.VarChar(10) department String? @db.VarChar(20) st..