Code States
Front-end boost camp
Today
I
Learned
๐ 37์ผ์ฐจ!
npm init
์ ๋ช ๋ น ํ์ฉํด package.json ํ์ผ ์์ฑ -> enter ๋๋ฅด๋ฉด ๊ธฐ๋ณธ๊ฐ
npm instiall express
์ ๋ช ๋ น ํ์ฉํด express ์ค์น
let body = [];
request.on('data', (chunk) => {
body.push(chunk);
}).on('end', () => {
body = Buffer.concat(body).toString();
// body ๋ณ์์๋ ๋ฌธ์์ด ํํ๋ก payload๊ฐ ๋ด๊ฒจ์ ธ ์์ต๋๋ค.
});
์ ์ฝ๋๋ฅผ body-parser ๋ฏธ๋ค์จ์ด๋ฅผ ์ฌ์ฉํ๋ฉด?? โผ
// npm์ผ๋ก body-parser ์ค์น
npm install body-parser
// body-parser๋ฅผ ๋ฏธ๋ค์จ์ด๋ฅผ ์ด์ฉํ ์ฝ๋
const bodyParser = require('body-parser');
const jsonParser = bodyParser.json();
// ์๋ต
app.post('/users', jsonParser, function (req, res) {
})
// Express ๋ด์ฅ ๋ฏธ๋ค์จ์ด์ธ express.json() ์ฌ์ฉ
const jsonParser = express.json();
// ์๋ต
app.post('/api/users', jsonParser, function (req, res) {
})
// express.json() ๋ฏธ๋ค์จ์ด ์ฌ์ฉ์ ์๋ฌ๊ฐ ๋๋ค๋ฉด?
const jsonParser = express.json({strict: false});
// ์๋ต
app.post('/api/users', jsonParser, function (req, res) {
})
const defaultCorsHeader = {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': 'GET, POST, PUT, DELETE, OPTIONS',
'Access-Control-Allow-Headers': 'Content-Type, Accept',
'Access-Control-Max-Age': 10
};
// ์๋ต
if (req.method === 'OPTIONS') {
res.writeHead(200, defaultCorsHeader);
res.end()
}
// npm์ผ๋ก cors ์ค์น
npm install cors
// ๋ชจ๋ ์์ฒญ์ ๋ํด cors ํ์ฉ
const cors = require('cors');
// ์๋ต
app.use(cors());
// ํน์ ์์ฒญ์ ๋ํด cors ํ์ฉ
const cors = require('cors')
// ์๋ต
app.get('/products/:id', cors(), function (req, res, next) {
res.json({msg: 'This is CORS-enabled for a Single Route'})
})
const express = require('express')
const app = express();
const myLogger = function (req, res, next) {
consloe.log('LOGGED');
next();
};
app.use(myLogger);
app.get('/', function (req, res) {
res.send('Hello World!');
});
app.listen(3000);
// ๋ชจ๋ ์์ฒญ์ ๋ํด ๋ฉ์๋์ url์ ์ถ๋ ฅํ๋ ์์?
const express = require('express');
const app = express();
const myLogger = function (req, res, next) {
//req๋ฅผ ํ์ฉํฉ๋๋ค.
next();
};
app.use(myLogger);
app.get('/', function (req, res) {
res.send('Hello World!');
});
app.listen(3000);
app.use((req, res, next) => {
// ํ ํฐ์ด ์๋์ง ํ์ธ, ์์ผ๋ฉด ๋ฐ์์ค ์ ์์.
if(req.headers.token){
req.isLoggedIn = true;
next();
} else {
res.status(400).send('invalid user')
}
})