Node.js발행일 2022. 12. 2.원본 https://blog.naver.com/jword_/222944405036 ↗

[AI스쿨] express js PUT으로 데이터수정하기

[AI스쿨] express js PUT으로 데이터수정하기 — #AI스쿨 #expressjs #restfulapi #expressPUT AI스쿨 msa기반 java 백엔드 코스 중에 공부한 내용을...

#Node js#Naver Blog

#AI스쿨 #expressjs #restfulapi #expressPUT

​

AI스쿨 msa기반 java 백엔드 코스 중에 공부한 내용을 작성하였습니다

학습법 이론

학습을 하기 이전, 명심해야할 학습법이 있다.

​

1.이해가지 않는다고 뒤돌아가 다시 보지 말 것

2.외우지 말라

=> 자주 봐서 외워짐을 당하라

=> 크롬을 통해 copy and paste하라

  1. 이해하는게 중요하다

=> 왜 생겨났는지?

=> 왜 사용하는지?

===> 응용이 가능해진다.

4.새로운 지식을 넣을땐 뇌를 비우자

express js RESTful API (PUT)

이미지

REST Update

REST의 Update부분을 담당하는 PUT에 대해 알아보겠습니다. PUT요청은 데이터를 수정하는데 사용됩니다. 역시나 API설계 후 포스트맨으로 테스트 해보겠습니다.

PUT 데이터 수정 설계하기

app.put

app.put을 사용하면 PUT매서드를 사용할 수 있습니다.

​

데이터

const products = \[ { id: 1, name: "pencil", price: 500 }, { id: 2, name: "book", price: 15000 },\];

실습에 사용할 데이터입니다.

​

URI parameter로 데이터수정하기

이전 GET요청시에 다뤄보았던 URI parameter와 동일하게 API를 설계해보겠습니다. 사용자가 property(=id)값을 입력하면 해당데이터를 수정하도록 만들것입니다.

​app.put("/products/:id", (req, res) => { const { name } = req.body; const { price } = req.body; const id = Number(req.params.id) - 1;​ if (products\[id\]) { if (name) { products\[id\].name = name; } if (price) { products\[id\].price = price; }​ res.send({ message: "데이터를 수정했습니다.", data: products\[id\], }); } else { res.send({ error: "존재하지 않는 데이터입니다.", }); }});

url : /products/:id

해당 url로 put매서드가 실행되도록 설정해두고, API를 설계해줍니다.

​

const id = Number(req.parmas.id) -1

url에서 받은 id값이 실제 배열의 객체에 담긴 id값과 동일하도록 req로 데이터를 숫자로 받은 후 -1을 해줍니다. (배열은 0부터 시작이닌깐)

​

if문

if문을 사용하여 배열에 담긴 데이터들을 수정하여줍니다.

포스트맨으로 확인하기

이미지

GET요청을 사용하여 처음 저장한 데이터를 불러옵니다.

​

이미지

정해둔 put요청 url을 입력합니다. id=1을 입력했으니 배열의 \[1-1\]번째 요소를 수정합니다.

이미지

다시 전체데이터를 불러와주면 첫번째 객체 데이터가 수정된 것을 볼 수 있습니다.

​

​