본문 바로가기

컴퓨터/NodeJS

NodeJS ejs-locals 설치 npm install ejs-locals 설정 const engine = require('ejs-locals'); app.engine('ejs', engine); app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'ejs'); 사용 layout.ejs 홈 page.ejs Hello, World!
Nodejs nodemon 설치 npm install -g nodemon 사용 package.json "scripts": { "test": "nodemon --watch ./ ./main.js" } ./ : 현재 디렉토리 하위를 감시한다. ./main.js: 감시 대상에 변화가 생기면 main.js 파일을 실행한다. 설정 nodemon.json { "ignore": ["./views/*", "./public/*"] } views, public 디렉토리 하위의 모든 변화는 무시한다.
NodeJS crypto 암호화 복호화 1. 모듈 설치 crypto 모듈은 내장 모듈이기에 따로 설치할 필요가 없다. 2. 모듈 추출 const CRYPTO = require("crypto"); 3. 단방향 1 const PASSWORD = "암호화할 문자열"; 2 const SALT = CRYPTO.randomBytes(64).toString("base64"); 3 const HASHEDPW = CRYPTO.pbkdf2Sync(PASSWORD, SALT, 9999, 64, "sha512").toString("base64"); 2: 임의의 문자열을 64의 길이인 base64의 형식으로 생성한다. 3: PASSWORD에 SALT를 덧붙여 sha512 방식으로 9999번 반복해서 64의 길이인 base64의 형식으로 변환한다. 결과를 저장할 때는..
NodeJS cors ~/ app$ npm install --save cors 1. 전체에 열어주기 const cors = require("cors"); app.use(cors()); 2. 특정 호스트에만 열어주기 const cors = require("cors"); const whitelist = ['http://example1.com', 'http://example2.com'] const corsOptions = { origin: (origin, callback) => { if (whitelist.indexOf(origin) !== -1) { callback(null, true) } else { callback(new Error('Not allowed by CORS')) } } } app.use(cors(corsOptio..
NodeJS npm mysql2 1. 설치 npm install --save mysql2 2. Promise Wrapper 사용 async () => { // get the client const mysql = require('mysql2'); // create the pool const pool = mysql.createPool({host:'localhost', user: 'root', database: 'test'}); // now get a Promise wrapped instance of that pool const promisePool = pool.promise(); // query database using promises const [rows,fields] = await promisePool.query("SELECT 1")..