[AI스쿨] express js PUT으로 데이터수정하기
[AI스쿨] express js PUT으로 데이터수정하기 — #AI스쿨 #expressjs #restfulapi #expressPUT AI스쿨 msa기반 java 백엔드 코스 중에 공부한 내용을...
#AI스쿨 #expressjs #restfulapi #expressPUT
AI스쿨 msa기반 java 백엔드 코스 중에 공부한 내용을 작성하였습니다
학습법 이론
학습을 하기 이전, 명심해야할 학습법이 있다.
1.이해가지 않는다고 뒤돌아가 다시 보지 말 것
2.외우지 말라
=> 자주 봐서 외워짐을 당하라
=> 크롬을 통해 copy and paste하라
- 이해하는게 중요하다
=> 왜 생겨났는지?
=> 왜 사용하는지?
===> 응용이 가능해진다.
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\]번째 요소를 수정합니다.
다시 전체데이터를 불러와주면 첫번째 객체 데이터가 수정된 것을 볼 수 있습니다.



