Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- 이진탐색
- Next.js
- app.post
- 안드로이드빌드에러
- app:compiledebugkotlin
- extends
- TS
- 배열중복요소제거
- reactnative error
- javascript
- npm에러
- 스크롤이벤트
- map
- generic
- forwardref type
- 리액트네이티브아이콘
- react
- err_connection_refused
- Spring
- 슬라이딩윈도우
- mainapplication.kt
- array
- interface
- 타입스크립트
- materialicons
- Filter
- 상속
- async
- set
- reactnative
Archives
- Today
- Total
rhanziy
node.js - ajax 삭제요청 본문
HTTP 요청은 GET, POST, PUT, DELETE 4가지가 있다.
HTML 폼에서는 GET과 POST만 요청 가능.
그래서 삭제요청을 할 때 쓸 수 있는 3가지 방법이 있다.
1. method-override 라이브러리의 도움을 받는다
2. AJAX로 DELETE 요청을 날린다
3. 그냥 POST요청을 날려서 DELETE 작업을 수행한다
REST한 API를 만들기 위해 1번과 2번을 쓴다. 오늘은 2번~
AJAX요청은 제이쿼리문법으로 하는게 간단해서 제이쿼리CDN을 문서에 포함해주자.
<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
문법은 $.ajax부분 참고
<ul class="list-group">
<% for (var i = 0; i < posts.length; i++){ %>
<li class="list-group-item">
<h4> 할일 제목 : <%= posts[i].제목 %> </h4>
<p> 할일 마감날짜 : <%= posts[i].날짜 %> </p>
<button class="delete" data-id="<%= posts[i]._id %>">삭제</button>
</li>
<% } %>
</ul>
// 버튼 클릭 시 해당 게시물 삭제
<script>
$('.delete').click(function(){
$.ajax({
method : 'DELETE',
url : '/delete',
data : { _id : e.target.dataset.id }
}).done(function(결과){
//AJAX 성공시 실행할 코드는 여기
$(this).parent('li').fadeOut();
})
});
</script>
서버 요청 문법
app.delete('/delete', function(요청, 응답){
요청.body._id = parseInt(요청.body._id)
db.collection('post').deleteOne(요청.body, function(에러, 결과){
console.log('삭제완료')
})
응답.send('삭제완료')
});
parseInt로 db에 저장된 id의 데이터 타입과 맞춰주자.
'Node.js' 카테고리의 다른 글
node.js - method-override 라이브러리 PUT 구현 (0) | 2023.03.20 |
---|---|
node.js - detail 상세페이지(params.id) (0) | 2023.03.20 |
mongoDB에 id값 auto increase 구현 (0) | 2023.01.17 |
node.js - app.post 구현하고 ejs라이브러리 설치 (2) | 2023.01.15 |
MongoDB Atlas 가입, 설치, node.js와 연결 (0) | 2023.01.13 |
Comments