KNKim Nakyeonginnakkim.hashnode.dev·Aug 6, 2024 · 2 min readServer-sent events(SSE): 오지 않는 이벤트, 빈 문자열 처리문제: event 필드만 전송할 경우 처리되지 않음 결론: EventSource는 데이터 필드가 비었을 경우 메시지를 처리하지 않음 일단 SSE 정의부터 간단하게 알아보자. SSE는 서버 푸시 기술로, 클라이언트가 아닌 서버가 통신을 시작하는 통신 방법이다. 주로 연속적인 데이터 스트림을 브라우저 클라이언트로 보내는 데 사용된다. 클라이언트에서 EventSource 객체를 이용하여 연결을 설정하면, 서버에서 text/event-stream ...00
KNKim Nakyeonginnakkim.hashnode.dev·Jan 14, 2024 · 2 min read자바스크립트의 실행 컨텍스트와 클로저자바스크립트 엔진은 실행 컨텍스트를 통해 식별자와 스코프를 관리한다. 실행 컨텍스트는 소스코드를 평가/실행하고 코드 실행 결과를 관리하는 영역이다. 실행 컨텍스트는 식별자와 스코프를 관리(렉시컬 환경)하고, 코드 실행 순서를 관리(실행 컨텍스트 스택)하는 내부 메커니즘이다. 자바스크립트 엔진은 소스코드를 평가와 실행 두 단계로 나누어 처리한다. 소스코드 평가 단계: 선언문을 처리하고 평가 결과를 스코프에 등록 소스코드 실행 단계: 선...00
KNKim Nakyeonginnakkim.hashnode.dev·Jan 13, 2024 · 2 min readMongoDB에서 MySQL로 데이터 이전 with csvExpress.js와 MongoDB를 이용하여 작성했던 게시판 프로젝트가 있다. 헤로쿠가 무료 플랜을 중단하면서 서버가 내려갔었는데, 친구들의 요청이 있기도 했고 NestJS와 MySQL + kysely를 손에 익힐 겸 다시 재작성하고 있다. 프로젝트를 살리는 김에 이전 글들을 볼 수 있으면 좋을 것 같다는 생각이 들었다. 그러니 알아보자. MongoDB의 데이터를 MySQL로 이전하는 방법 MongoDB에서 데이터 추출 mongoexport ...00
KNKim Nakyeonginnakkim.hashnode.dev·Jan 11, 2024 · 3 min read관계형 데이터베이스의 함수적 종속성과 정규화이 글은 Pearson의 Fundamentals of Database Systems 7판을 읽고 작성했습니다. 릴레이션 스키마를 설계하는 몇 가지 개략적인 지침 지침 1. 의미가 쉽게 전달되도록 릴레이션 스키마를 설계한다. 여러 개의 엔티티 타입과 관계 타입의 애트리뷰트들을 섞어서 하나의 릴레이션으로 구성하면 안 된다. 지침 2. 릴레이션에서 삽입, 삭제, 또는 수정 이상이 생기지 않도록 기본 릴레이션 스키마를 설계한다. 예를 들어, 특정 부...00
KNKim Nakyeonginnakkim.hashnode.dev·Dec 19, 2023 · 1 min readHttpOnly 쿠키HttpOnly 쿠키는 웹 서버가 HTTP 응답 헤더를 통해 설정하는 쿠키이다. 해당 쿠키는 클라이언트 측에서 자바스크립트로 접근할 수 없고, 오직 HTTP 요청을 통해서만 서버로 전송된다. 서버에서 accessToken이라는 쿠키를 httpOnly로 설정할 경우, 아래와 같이 해당 쿠키는 자바스크립트로 쿠키를 확인할 수 없다. 클라이언트에서 자바스크립트로 접근할 수 없기 때문에 Cross-site 스크립팅(XSS) 공격을 방지할 수 있다....00