Node.js, Express(19)
-
우분투 node 12 설치, 최신 npm설치 명령어
node12 설치 curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash - sudo apt-get install -y nodejs npm 업데이트 npm -v sudo npm install -g npm 출처: qastack.kr/ubuntu/426750/how-can-i-update-my-nodejs-to-the-latest-version velopert.com/1351
2020.11.26 -
X-Powered-By헤더 차단 Helmet사용, Express
X-Powered-By헤더는 어떤 기술로 서버를 개발했는지 나오는 값이다. 그래서 공격자가 어떤걸로 개발했는지 알고 공격을 하면 보안의 취약점이 생기는데 이걸 Express에서는 helmet이라는 모듈을 사용하여 막을 수 있다. npm install --save helmet 설치하고 var helmet = require('helmet') app.use(helmet()) 사용하면 차단 할 수 있다. 혹 은 helmet을 사용하지 않고 app.disable('x-powered-by') X-Powered-By만 차단 할 수 있다. 하지만 helmet을 사용하면 취약점을 보완 할 수 있으니 helmet을 쓰는게 좋을거 같다. 참고 : expressjs.com/ko/advanced/best-practice-sec..
2020.10.30 -
우분투에서 node 12 설치
우분투에서 node 설치 sudo apt-get update curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash - sudo apt-get install -y nodejs 출처: https://avisynth.tistory.com/23 [avisynth's blog]
2020.10.25 -
오류 PayloadTooLargeError: request entity too large
파서가 읽을수 있는 데이터 용량이 허용치 보다 초과해서 이런 오류가 생기는데 bodyParser의 허용치를 높히면 해결이 가능하다. body Parser = 기본 허용치 100kb express는 bodyParser가 내장되어있다. express로 서버를 구성하면 app.js에 app.use(express.json()) app.use(express.urlencoded({ extended: false })) 가 있다. app.use(express.json({ limit: '1mb' })) app.use(express.urlencoded({ limit: '1mb', extended: false })) 로 리밋을 늘려 주면 해결된다. 참고 : spiralmoon.tistory.com/entry/Nodejs-P..
2020.10.23 -
node-schedule 사용법, 자동화, 스케줄
node-schedule 시간을 설정하여 해당 코드를 시간에 맞춰 자동으로 작동하게 도와주는 모듈이다. 설치 npm i node-schedule lib 폴더에 ranking_update라는 파일을 만들고 const schedule = require('node-schedule'); module.exports = { test: () => { schedule.scheduleJob('20 * * * * *', async()=>{ console.log('hi!') }) } } 코드를 작성한다 코드 내용은 20초에 작동하라는 뜻이다. app.js에서 ranking_update 불러와서 test함수를 실행 시킨다. 20초 마다 콘솔창으로 hi! 를 찍어낸다 이렇게 설정을 해줄 수 도 있다 var j = schedul..
2020.09.23 -
moment 포맷
데이터를 Date타입으로 변경해 줄때 moment 함수를 moment(A).format("YYYY-MM-DD HH:mm:ss"); 이런식으로 썼는데 계속해서 Deprecation warning: value provided is not in a recognized ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnin..
2020.04.11