const sendPosts = (req, res) => {
res.json({ // 위에서 작성한 sendPosts 함수와 비교했을 때,
// express 덕분에 JSON.stringify 함수를 사용할 필요없이
// response 객체의 json 메소드를 활용합니다.
products: [
{
id: 1,
title: 'node',
description: 'node.js is awesome',
},
{
id: 2,
title: 'express',
description: 'express is a server-side framework for node.js',
},
],
})
}
module.exports = { sendPosts } // routing.js 에서 사용하기 위해 모듈로 내보낸다.
postings.js
const createProduct = (req, res) => {
const products = [] // 임의의 빈 배열에다가 상품 정보를 저장하겠습니다.
console.log('Request body: ', req.body) // client로 부터 받은 정보를 확인합니다.
const { title, description } = req.body // client로 부터 전달받은 정보를 활용합니다
const product = {
// id : uuid.uuid() // 추가사항
title : title,
description : description
} // 전달 받은 키를 이용해 객체를 만듭니다.
products.push(product) // 새로만든 객체를 상품 정보 배열에 추가해줍니다.
res.json({ data: products }) // 새로 생성된 배열을 client에게로 반환해줍니다.
}
module.exports = { sendPosts, createProduct }
// routing.js 에서 사용하기 위해 모듈로 내보낸다.
server.js
app.post('/signup', () => console.log('signed up!')) // 첫번째 인자에는 endpoint url 을 기입하고,
app.post('/login', () => console.log('logged in!')) // 각각의 요청에 대해 핸들링 하는 함수를 두번째 인자로 넣습니다.
app.get('/products', sendPosts)
app.post('/products', createProduct) // <<----- routing을 추가해줍니다 :)
postings.js
const updatePost = (req, res) => {
const products = [
{
id: 1,
title: 'node',
description: 'node.js is awesome',
},
{
id: 2,
title: 'express',
description: 'express is a server-side framework for node.js',
},
]
const { id } = req.body
const posting = postings.filter((posting) => posting.id === id)
posting.title = "new title"
res.json({ data: products })
}
module.exports = { sendPosts, createPost, updatePost }
server.js
app.post('/signup', () => console.log('signed up!')) // 첫번째 인자에는 endpoint url 을 기입하고,
app.post('/login', () => console.log('logged in!')) // 각각의 요청에 대해 핸들링 하는 함수를 두번째 인자로 넣습니다.
app.get('/products', sendPosts)
app.post('/products', createProduct)
app.put('/products', updatePost) // <<----- routing을 추가해줍니다 :)
postings.js
const deletePost = (req, res) => {
const postings = [
{
id: 1,
title: 'node',
description: 'node.js is awesome',
},
{
id: 2,
title: 'express',
description: 'express is a server-side framework for node.js',
},
]
const { id } = req.body
for (let i = 0; i < postings.length; i++) {
const posting = postings[i]
if (posting.id === id) {
delete posting[i]
}
}
return res.json({ data: postings })
}
module.exports = { sendPosts, createPost, updatePost, deletePost }
server.js
app.post('/signup', () => console.log('signed up!')) // 첫번째 인자에는 endpoint url 을 기입하고,
app.post('/login', () => console.log('logged in!')) // 각각의 요청에 대해 핸들링 하는 함수를 두번째 인자로 넣습니다.
app.get('/products', sendPosts)
app.post('/products', createProduct)
app.put('/products', updatePost)
app.delete('/products', deletePost) // <<----- routing을 추가해줍니다 :)