프레임워크/NodeJs
-
[ORM] Prisma Schema 작성하여 DB 세팅하기 (with. NextJS)프레임워크/NodeJs 2024. 8. 7. 23:42
ORMObject Relational Mapping 객체 관계 매핑은 데이터베이스와 객체 지향 프로그래밍 언어 간의 호환되지 않는 데이터를 변환하는 프로그래밍 기법이다. 객체 관계 매핑 - 위키백과, 우리 모두의 백과사전위키백과, 우리 모두의 백과사전. 객체 관계 매핑(Object-relational mapping; ORM)은 데이터베이스와 객체 지향 프로그래밍 언어 간의 호환되지 않는 데이터를 변환하는 프로그래밍 기법이다. 객체 지향ko.wikipedia.org 해당 글은 개인 프로젝트를 만들면서 공부하고 적용한 내용을 작성한 글입니다. 그러므로 Prisma의 Schema 모든 기능이 작성되어 있지 않습니다. 모든 기능에 대한 내용은 아래 공식문서 링크에서 확인해 주세요.https://www.pri..
-
[NodeJs] localhost가 실행되었는데 127.0.0.1 에 접속되지 않는 경우프레임워크/NodeJs 2022. 11. 5. 22:28
해결 방법 (결론) 결론부터 말하자면 NodeJs 버전 17 이상부터 서버 실행시 ipv6 프로토콜을 우선적으로 사용하기 때문에 ipv4 프로토콜의 루프백 주소인 127.0.0.1 은 연결이 되지 않는 것이다. 그래서 아래와 같은 설정을 추가해주면 된다. import dns from "node:dns"; dns.setDefaultResultOrder("ipv4first"); 2022.11.10 vite로 생성한 프로젝트에서 위와 같은 방법으로 완전히 해결되지 않는 경우가 발생했다. 또 다른 환경에서 프로젝트를 빌드하고, preview 모드로 실행한 경우였는데, 아래와 같은 방법으로 수정했다. vite.config.ts export default defineConfig({ //... server: { ho..
-
[NodeJs] Exit status 3221225477 발생. 및 해결프레임워크/NodeJs 2022. 10. 8. 01:32
next js 프로젝트를 오랜만에 새로 만들어서 빌드하는 과정에서 에러가 발생했다. 프로젝트를 새로 만든 명령어는 $ npx create-next-app@latest --typescript 공식홈페이지에 적혀있는 명령어다. 이걸 설치하는 과정에서도 중간중간 에러가 발생했으나, 몇 번 재시도 하면서 정상적으로 설치가 되었다. 그러나 결국 build하는 과정에서 에러가 발생하고, 아무리 시도해도 되지 않았는데. 0 info it worked if it ends with ok 1 verbose cli [ 1 verbose cli 'C:\\Program Files (x86)\\nodejs\\node.exe', 1 verbose cli 'C:\\Program Files (x86)\\nodejs\\node_modu..
-
[NodeJs] 채팅 서버 만들어서 실행하기프레임워크/NodeJs 2022. 5. 29. 00:56
채팅 서버를 간단하게 오픈할 수 있도록 만들어보겠습니다. Socket.io를 사용하였고, 공식 홈페이지에 나와있는 대로 구현해보려고 합니다. https://socket.io/get-started/chat NodeJS 설치 후 npm 프로젝트 생성을 합니다 $ npm init 맨 처음 npm init 명령어를 실행하면 package.json 파일이 생성됩니다 { "name": "chat-socket", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC" } ES6 문법을 사용..
-
[NodeJs] tosource - console창에 [Function]이 출력 될 때 사용하는 라이브러리프레임워크/NodeJs 2021. 3. 6. 21:45
이번에 ES6 문법을 좀 더 자유자재로 사용하기 위해서 공부를 해야겠다는 생각이 들어 강의를 듣게 되었습니다. 인프런에 있는 유인동강사님의 함수형 프로그래밍과 JavaScript ES6+ 라는 강의에요. 해당 강의는 html파일로 javascript 를 작성하고, 웹브라우저에서 결과를 확인하는데요. 저는 Node.js로 실습환경을 만들었습니다. 그렇게 강의를 듣던 도중 실행결과가 다르게 출력되는 경우가 생겼고, 이를 해결하기 위한 라이브러리를 찾아 사용하게 되었습니다. 예를 들면 강의처럼 html 파일로 작성하고 브라우저에서 실행하면 웹브라우저의 개발자도구 console창에서는 이렇게 출력이 되는데요. a => a + 5 제가 아래코드처럼 js 파일로 작성하고 node 명령어로 실행하면 const add..
-
[NodeJs] puppeteer - EPERM error 발생프레임워크/NodeJs 2021. 2. 21. 04:09
에러메세지 [Error: EPERM: operation not permitted, unlink 'C:\Users\AppData\Local\Temp\puppeteer_dev_chrome_profile-xHAhwu\CrashpadMetrics-active.pma'] { errno: -4048, code: 'EPERM', syscall: 'unlink', path: 'C:\\Users\\AppData\\Local\\Temp\\puppeteer_dev_chrome_profile-xHAhwu\\CrashpadMetrics-active.pma' } puppeteer issue에서 저와 같은 현상을 겪고 있는 개발자들을 발견했는데요. github.com/puppeteer/puppeteer/issues/298 EPER..
-
[NodeJs] winston모듈을 사용하여 로그 저장하기프레임워크/NodeJs 2020. 10. 20. 21:29
먼저 아래 두개의 모듈을 설치해줍니다. $ npm install winston $ npm install winston-daily-rotate-file winston-daily-rotate-file : 날짜에 따라 자동으로 파일이 생성되며 로그가 쌓일 수 있도록 도와주는 모듈 제가 사용한 버전은 아래와 같습니다. "winston": "^3.3.3" "winston-daily-rotate-file": "^4.5.0" 저는 logSave.js 라는 파일을 만든 후, 해당 파일을 모듈화하여 사용하였습니다. const winston = require('winston'); require('winston-daily-rotate-file'); // level 종류 // error:0 , warn:1, info:2, h..