Backend ๐Ÿ“š/Node.js 13

[Node] ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ, ํ† ํฐ ์ƒ์„ฑ - Bcrypt, Jsonwebtoken

1.  ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค์—์„œ ์š”์ฒญํ•œ E-mail ์ฐพ๊ธฐ- User.findOne()์œผ๋กœ ์ฐพ๊ธฐ// index.js...app.post("/login", async (req, res) => { // ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค์—์„œ ์š”์ฒญ๋œ E-mail ์ฐพ๊ธฐ try { const user = await User.findOne({ email: req.body.email }); if (!user) { // E-mail์ด ์—†๋‹ค๋ฉด return res.json({ loginSuccess: false, message: "์ œ๊ณต๋œ ์ด๋ฉ”์ผ์— ํ•ด๋‹นํ•˜๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.", }); } })})...  2. ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค์—์„œ ์š”์ฒญํ•œ E-mail์ด ์žˆ๋‹ค๋ฉด ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ๊ฐ™์€์ง€ ํ™•์ธ1) ..

[Node] ๋น„๋ฐ€๋ฒˆํ˜ธ ์•”ํ˜ธํ™” - Bcrypt

0. ๋“ค์–ด๊ฐ€๊ธฐ ์•ž์„œ!- ํ˜„์žฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ๋œ ๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” ๋„ˆ๋ฌด ์•ˆ์ „ํ•˜์ง€ ์•Š์Œ- ๊ทธ๋ž˜์„œ Bcrypt๋ฅผ ์‹œ์šฉํ•ด ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์•”ํ˜ธํ™”ํ•ด์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅํ•ด์•ผํ•จ 1. Bcrypt ๋‹ค์šด๋ฐ›๊ธฐnpm install bcrypt --save 2. User.js ์ˆ˜์ •1) ์•”ํ˜ธํ™” ํ•  ํƒ€์ด๋ฐ// index.js...app.post('/register', async (req, res) => { const user = new User(req.body) // save ์ „์— ๋น„๋ฐ€๋ฒˆํ˜ธ ์•”ํ˜ธํ™” const result = await user.save().then(()=>{ res.status(200).json({ success: true }) }).catch((err)=>{ res.json({ succ..

[Node] ๋น„๋ฐ€ ์„ค์ • ์ •๋ณด ๊ด€๋ฆฌ

0. ๋“ค์–ด๊ฐ€๊ธฐ ์•ž์„œ!์†Œ์Šค์ฝ”๋“œ ์•ˆ์— ์žˆ๋Š” ๋น„๋ฐ€์ •๋ณด๋Š” ๋ณดํ˜ธํ•ด์•ผ ํ•จ(MongoDB ์•„์ด๋””, ๋น„๋ฐ€๋ฒˆํ˜ธ)๊ทผ๋ฐ github์— ์˜ฌ๋ฆฌ๋ฉด ์•„์ด๋””,๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ๊ทธ๋Œ€๋กœ ๋…ธ์ถœ๋จ.๋”ฐ๋ผ์„œ ๊ทธ ๋ถ€๋ถ„์„ ๋”ฐ๋กœ ํŒŒ์ผ๋กœ ์ €์žฅํ•ด ๊ทธ ํŒŒ์ผ์„ .gitignore์— ๋”ฐ๋กœ ์ €์žฅ. 1. ๋น„๋ฐ€ ์ •๋ณด ํŒŒ์ผ์— ๋”ฐ๋กœ ์ €์žฅํ•˜๊ธฐ// key.jsif(process.env.NODE_ENV == 'production') { module.exports = require('./prod'); // Deploy ํ›„} else { module.exports = require('./dev'); // Local ํ™˜๊ฒฝ}1) Local ํ™˜๊ฒฝ์—์„œ// dev.jsmodule.exports = { mongoURI: 'mongodb+srv://์•„์ด๋””:๋น„๋ฐ€๋ฒˆํ˜ธ@bolie..

[Node] BodyParser, PostMan, ํšŒ์› ๊ฐ€์ž… ๊ธฐ๋Šฅ (+ Nodemon)

0. ๋“ค์–ด๊ฐ€๊ธฐ ์•ž์„œ!BodyParser ๋ž€ํด๋ผ์ด์–ธํŠธ์—์„œ ์„œ๋ฒ„๋กœ ์ •๋ณด๋ฅผ ๋ณด๋‚ผ ๋•Œ Bodyparser Dependency ํ•„์š”ํ•จBodyparser๊ฐ€ Client์—์„œ ์˜ค๋Š” ์ •๋ณด๋ฅผ ์„œ๋ฒ„์—์„œ ๋ถ„์„ํ•ด์„œ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๊ฑฐ์ž„ 1. BodyParser ๋‹ค์šด๋กœ๋“œnpm instal body-parser --save 2. Postman ๋‹ค์šด๋กœ๋“œ- ๋งŒ๋“ค์–ด์ง„ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์—†์–ด์„œ ๋ฐ์ดํ„ฐ๋ฅผ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ๋ณด๋‚ผ ์ˆ˜ ์—†์Œ. ๊ทธ๋ž˜์„œ ๋Œ€์šฉ์œผ๋กœ Postman ์‚ฌ์šฉ  3. ํšŒ์›๊ฐ€์ž… ์œ„ํ•œ ๋ผ์šฐํ„ฐ ๋งŒ๋“ค๊ธฐconst express = require('express')const app = express()const port = 4000const bodyParser = require('body-parser'); // ๋‹ค์šด๋ฐ›์€ bodyParse..

[Node] GIT ์„ค์น˜, Github ์—ฐ๊ฒฐ

0. ๋“ค์–ด๊ฐ€๊ธฐ ์•ž์„œ!git ์ด๋ž€๋ถ„์‚ฐ ๋ฒ„์ „ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ, ์ฝ”๋“œ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์ด๋ผ๊ณ  ๋ณด๋ฉด ๋จ ์—ฌ๋Ÿฌ ๋ช…์ด ํ•œ ์‚ฌ์ดํŠธ๋ฅผ ์œ„ํ•ด ์ฝ”๋“œ๋ฅผ ์ง ๋‹ค๋ฉด ๊นƒ์„ ํ†ตํ•ด ์ฝ”๋“œ๋ฅผ ํ•ฉ์น  ์ˆ˜ ์žˆ๊ณ , ์–ด๋–ค ์‚ฌ๋žŒ์ด ์–ด๋–ค ๋ถ€๋ถ„์„ ๋งŒ๋“ค์—ˆ๋Š”์ง€ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Œ.git hub ๋ž€git์€ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ํˆด์ด์ง€๋งŒ, github๋Š” git์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ์ฝ”๋“œ๋“ค์„ github์— ์˜ฌ๋ ค์„œ ์ˆ˜์ •, ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค์ž„(git์„ ์‚ฌ์šฉํ•˜๋Š” ์„œ๋น„์Šค) 1. git ๋‹ค์šด๋กœ๋“œ1) git ์กด์žฌ ์—ฌ๋ถ€ ํ™•์ธgit --version2) git ๋ฒ„์ „์ด ์—†์œผ๋ฉด ๋‹ค์šด๋กœ๋“œ 2. ์†Œ์Šค ์ฝ”๋“œ Git Repository(์ €์žฅ์†Œ)์— ์˜ฌ๋ฆฌ๊ธฐ- ๋งŒ๋“ค๊ณ  ์žˆ๋Š” ์ฝ”๋“œ์˜ ๋ฒ„์ „ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•ด1) vscode ํ„ฐ๋ฏธ๋„์—์„œ ์ €์žฅ์†Œ ๋งŒ๋“ค๊ธฐgit init- git ์ €์žฅ์†Œ๊ฐ€ ์„œ๋ธŒ ๋””๋ ‰ํ† ๋ฆฌ..