본문 바로가기

프로그래밍/Node.js4

[express] pg-promise Express와 PostgreSQL을 pg 모듈을 사용해서 연동하던 중 하나의 Query로 찾은 데이터를 다른 쿼리에서 사용해야하는 경우가 발생하였다. 저번에도 이런 경우가 있었는데 pg에 Query안에 또 Query를 하는 방법으로 구현하여 했으나 promise나 async를 사용해도 비동기가 잡히지 않아 SQL을 수정하여 해결하였다. (사실 SQL을 수정하는게 맞긴한데 코드상 궁금하여 시도 해보았다) 무튼 이래 저래하다가 또 비슷한 경우가 발생해서 코드상으로 어떻게 해볼 수 있지 않을까 삽질하다가 코드로 해결하였다! 바로 pg-promise 모듈을 사용하는 것이다. pg와 pg-promise의 차이점은 pg는 query가 비동기로 진행되는 반면 pg-promise는 promise로 구현이 되어 동기 .. 2020. 7. 26.
[express] postgreSQL 연동 1. postgres 모듈 설치 npm install pg 2. 모듈 import const { Client } = require("pg"); const Query = require('pg').Query 3. 연결을 위한 client 객체 생성 var client = new Client({ user : 'user', host : 'localhost', database : 'postgres', password : 'password', port : 5432, }) 4. connection 확인 client.connect(err => { if (err) { console.error('connection error', err.stack) } else { console.log('success!') } }); 5... 2020. 7. 23.
[express] router 네이버 사전에 분류하다라고 써져있다. -끝- 분류하다라는 뜻에 걸맞게 url을 기준으로 어떤 행위를 할지 분류해주는 것이 router이다. 위의 url에서 dunchi.tistory.com은 BASE URL일 것이고 뒤에 /category/프로그래밍/Node.js는 분류를 위해 지정해준 URL일 것이다! 그렇다면 express에서 서버로온 request를 url로 확인하고 원하는 기능을 실행할 수 있는 router를 구현해보자 BASE URL이 dunchi.tistory.com이라고 가정하겠다! * 설정 router를 구현할 js파일을 만들어주자. 필자는 rotues 폴더 안에 api/category, api/item 등의 라우팅 파일들을 생성해주었다. 이후 app.js로 가보자 var itemCreat.. 2020. 7. 19.
Node 및 Express 설치 윈도우 사용자이기 때문에 윈도우 기준으로 설명하겠다! - Node 설치 https://nodejs.org/ko/ Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 위의 Node 홈페이지에서 다운 받는다! 최신 버전 설치해도 되지만 Stable한 버전인 왼쪽으로 설치하였다. node -v와 npm -v로 버전 확인과 함께 설치가 잘 되었는지 확인해보자. 위처럼 버전이 출력되면 정상 설치 된것이다! - Express 설치 프로젝트를 설치하고 싶은 곳으로 이동해서 npm init을 해주자. * npm init을 하면 package.json이 생성되는데 이게 없이 npm install을 하려고 하면.. 2020. 7. 12.