본문 바로가기

분류 전체보기321

SQLD - 데이터 모델링의 이해 데이터 모델링이란? 정보 시스템을 구축하기 위한 데이터 관점의 업무 분석 기법 현실 세계의 데이터에 대해 약속된 표기법에 의해 표현하는 과정 데이터베이스를 구축하기 위한 분석/설계의 과정 모델링의 특징 현실 세계를 일정한 형식에 맞추어 표현하는 추상화의 의미 복잡한 현실을 제한된 언어나 표기법을 통하여 이해하기 쉽게 하는 단순화의 의미를 가지고 있다. 애매모호함을 배제하고 누구나 이해가 가능하도록 정확하게 현상을 기술하는 정확화의 의미를 가진다. 데이터 모델링의 유의점 중복 데이터 모델은 같은 데이터를 사용하는 사람, 시간, 장소를 파악하는데 도움을 줌으로써 데이터베이스가 여러 장소에 같은 정보를 저장하는 잘못을 하지 않도록 한다. 비유연성 데이터 정의를 데이터의 사용 프로세스와 분리함으로써 데이터 모델.. 2023. 8. 20.
Base 64 를 알아보자 서론 어떻게든 파일을 base64 로 FileReader 했지만... base64를 제대로 아는 상태가 아니므로 알아가는 시간이 필요함을 느꼈다! Base64란 64진법 (2^6) 2의 제곱수에 기반한 진법들 중 화면에 표시되는 아스키문자들을 써서 표현할 수 있는 가장 큰 진법 바이너리 데이터를 텍스트로 변경하는 인코딩 방식 중 하나 공통 64개의 아스키 영역의 문자들로 이루어진 문자열로, 바이너리 데이터를 변경한다. A-Z, a-z, 0-9, +, / 로 구성되며 총 64 개의 아스키 문자가 있다. 보안을 위한 것이 아닌 바이너리 데이터를 텍스트로 다루고자 할 때 사용하며, 신뢰할 수 없는 통신 채널을 통해 바이너리 데이터를 안전하게 전송할 수 있도록 사용해준다. 6비트 당 2비트씩 오버헤드가 발생하여.. 2023. 8. 19.
Express 응답 - res.json, res.end, res.send response HTTP 요청을 받게 되면 res를 반환하게 된다. app.요청메서드('url', (req, res) => { // ... }); 1. res.json() json 이 아닌 것도 json 형식으로 바꾸어서 보내준다. Content-Type 헤더를 application/json 으로 고정해주는 것이다. 물론 마지막엔 res.send()를 호출하게 구현되어 있다. 2. res.end() 보내줄 데이터가 굳이 없으면서 끝내주고 싶을 때 사용 굳이 써줄 필요는 없으나 명시적으로 보여줘야 할 때 써준다. 3. res.send() send 안에 전해지는 내용에 따라 Content-Type이 자동적으로 정해진다. 가장 기본이 되는 응답 방식이다. 이번에 이진 데이터와 base64를 다루면서 appli.. 2023. 8. 18.
Content Type 을 올바르게 정하기, PayloadTooLargeError 해결 api 통신에 있어서 자주 사용되는 Content Type 을 정리해야함을 느꼈다. 무지성으로 특정 형태의 파일을 base64 형태로 body에 넣어주려고 했다가 PayloadTooLargeError 를 만나버렸다..ㅋㅋㅋㅋ Content Type? 클라이언트에서 브라우저로 파일으 보낼 때, 웹 서버는 HTTP 헤더로 파일이나 자원을 포함하는 바이트 Stream 을 보내게 된다. 즉, 헤더에는 클라이언트와 웹 서버의 커뮤니케이션 사항을 담는 것 이에 따라 보내지는 자원의 Content 타입이 포함되어야 하므로 이는 Content Type 헤더에 의해 지정된다. 파일을 업로드할 때, 클라이언트가 웹 브라우저라면 폼을 통하여, 파일을 등록 후 전송하게 된다. 이때 웹 브라우저에서 보내는 HTTP 메시지는 C.. 2023. 8. 17.