[React] D3
·
JavaScript/React
D3는 Data Driven Documents의 약자로써 D가 3개라는 뜻이라고 한다. 데이터 시각화 Javascript 라이브러리로, 데이터를 바탕으로 HTML의 DOM을 직접 조작하는 것이 특징이다.  나는 여기서 D3는 DOM을 직접 조작하고,React는 Virtual DOM으로 문서를 조작하기 때문에 서로 충돌되는 부분이 있을 것이라고 생각이 들었다.  그래서 찾아보니 오히려 시너지가 나는 부분이 있다고 한다. React가 D3에게 DOM을 제공하고 D3는 이것을 받아서 데이터를 화면에 그려내면 React Hooks의 상태관리 기능과 D3의 데이터 시각화 기능을 한꺼번에 활용할 수 있기 때문이다. 그러니까 한 마디로 하자면, 리액트의 장점인 반응형으로 데이터 시각화를 이루어낼 수 있다는 것이다. ..
[Node] 암호화(feat. bcrypt)
·
JavaScript/Node
Bcrypt는 단방향 암호화 알고리즘으로써, 비밀번호 해싱을 위해 설계되었다. 내부적으로 랜덤 salt가 생기고이에 따른, 해시값의 결과가 매번 바뀌게 된다.Bcrypt는 랜덤하게 솔트를 생성한 후 비밀번호와 솔트를 결합하여 Blowfish암호를 여러 번 반복하여 해싱한다.반복 횟수는 cost factor로 결정하며 이를 통해 해싱 속도를 조절한다. 그렇기 때문에, Brycpt는 단방향 암호화라고 한다. 입력 데이터를 고정된 크기의 해시 값으로 변환하고변환된 데이터를 원래의 입력한 데이터로 복원하는 것은 불가능하기 때문이다. /*salt는 해싱 과정에서 비밀번호에 추가되는 임의의 데이터 조각이라고 생각할 수 있다.salt가 추가됨으로써 동일한 비밀번호도 서로 다른 해시 값을 가지게 되어 같은 해시 값을 ..
[Postman] Postman?
·
Tools/Postman
API에 요청을 보내고 결과를 확인하길 원할 때, 브라우저에 직접 API URL을 작성하여 결과를 확인할 수 있다.하지만 이 방법은 말 그대로 서버를 켜고 해당 URL에 접속 후 매핑을 적용한 기능을 사용해서 결과를 확인해야 하는 아주 큰 번거로움이 있다. 하지만 포스트맨을 사용하면 URL에 요청할 매핑(메소드)를 지정할 수 있고 호출에 필요한 매개변수의 방식 설정 및 결과 확인을 빠르게 이루어낼 수 있다. 또한, 포스트맨은 웹으로도 사용가능하고 앱으로도 사용이 가능하다. 1. 포스트맨 다운로드https://www.postman.com Postman API Platform | Sign Up for FreePostman is an API platform for building and using APIs. ..
[Node] session
·
JavaScript/Node
자바에서 비교적 편리하게 세션과 쿠키를 다뤘던 경험과 다르게 Node 환경에서 session을 다뤄보는 것은 처음이기도 했고구조도 달라서 꽤나 애를 먹었다. 따라서, 기록을 해놔야 겠다는 생각이 들었다.  1. session 설치npm install express-mysql-sessionnpm install express-session express-session 만으로는 세션 저장 여부를 확인할 수 없기 때문에 express-mysql-session 을 사용해서 세션의 저장소를 함께 사용해 주어야 한다. 2. session 설정app.use( session({ secret: 'custom-secret', resave: false, saveUninitialize..
[GitHub] 디렉토리에 오른쪽 화살표(클릭 x)
·
GitHub
GitHub 디렉토리에 위와 같은 화살표가 나온다면 폴더에 접근할 수 없다는 것을 의미하며, 실제로 클릭을 해봐도 디렉토리에 들어가지질 않는다. 이 문제는 최상위 폴더 외에 .git 디렉토리가 추가로 생겨서 발생하는 문제이다. 해결법1) .git파일 제거2) 스테이징 파일 제거3) add commit push 진행 문제가 발생한 폴더에 들어간 후rm -rf .gitgit rm --cached . -rf 차례대로 진행 모두 진행했으면 add > commit > push 진행하면 해결이 된다.
[Node] Node.js?
·
JavaScript/Node
Node.js란?- Node.js는 서버 사이드 및 네트워크 애플리케이션을 구축하기 위해 설계된 오픈 소스, 크로스 플랫폼 JavaScript 런타임 환경이다. Node.js는 V8 JavaScript 엔진을 사용하여 JavaScript를 매우 빠르게 실행하며, 비동기 이벤트 기반 아키텍처를 채택하여 높은 성능과 확장성을 제공한다.  Node.js의 주요 특징 및 구성 요소비동기 이벤트 기반 아키텍처이벤트 루프: Node.js의 핵심은 이벤트 루프이다. 비동기 작업을 관리하고, 작업이 완료되었을 때 콜백을 실행하는 역할을 한다. 이 구조 덕분에 Node.js는 블로킹 없이 많은 클라이언트 요청을 동시에 처리할 수 있다.콜백: Node.js에서 비동기 작업이 완료되면 호출되는 함수이다. 예를 들어, 파일을..