본문 바로가기

WEB

(22)
Node.js로 웹서비스 만들기 14일차 URL 파라미터로 상세페이지 보여주기 /detail/게시글번호 의 형식으로 get요청을 했을때 서버에서 해당 게시물 번호에 맞는 내용을 detail.ejs 파일에 보여준다. //server.js app.get('/detail/:id', function(request, response){ db.collection('post').findOne({_id : parseInt(request.params.id)}, function(error, result){ console.log(result); response.render('detail.ejs', { data : result }); }); }); detail/:id 파라미터를 id라는 이름으로 넘겨준다 post 라는 이름의 컬렉션에서 _id가 파라미터로 넘겨주는 ..
Node.js로 웹서비스 만들기 13일차 삭제버튼을 클릭했을때 서버에 있는 게시글을 지우고 서버에서 성공 / 실패 여부를 알려준다 (서버응답코드) //server.js app.delete('/delete', function(req, result){ req.body._id = parseInt(req.body._id); console.log(req.body); db.collection('post').deleteOne(req.body, function(err, res){ console.log('삭제완료'); result.status(200).send({ message : '성공했습니다' }); }); }); 서버로부터 성공했다는 응답을 받았을 때 //list.ejs $('.delete').click(function(e){ var button = $(..
Node.js로 웹서비스 만들기 12일차 MongoDB에 있는 데이터 삭제 요청하기 db.collection('컬렉션이름').deleteOne({어떤걸 삭제할건지 여기에 적어줌}, function(){ //삭제가 완료된 다음에 실행할 것 }); 삭제 버튼을 클릭하면 해당 ID의 글을 삭제하는 요청 //list.ejs 삭제 //list.ejs $('.delete').click(function(e){ $.ajax({ method : 'DELETE', url : '/delete', data : {_id : e.target.dataset.id } //e.target.dataset.id 클릭한 버튼의 data-id값임 }).done(function(res){ }); }); //server.js app.delete('/delete', function(re..
Node.js로 웹서비스 만들기 11일차 Node.js에서 게시글을 삭제하는 방법 delete 요청을 하면 됨 서버에 delete요청을 하는 방법 Javascript AJAX를 이용한다. AJAX는 새로고침 없이 서버랑 통신할 수 있게 도와주는 자바스트립트 문법이다. AJAX 기본문법 //list.ejs $.ajax({ method : '', // 메소드 post get 등 url : '', //경로 data : '' //보내줄 데이터 }).done(function(result){ //요청이 완료되면 할 것 }); //server.js app.delete('/delete', function(req, res){ console.log(req.body); }); 다음 내용은 다음 포스팅에서
Node.js로 웹서비스 만들기 10일차 DB에 업데이트 할때 오퍼레이터를 사용해야 한다고 한다. operator의 종류 $set (변경) - 바꿔주세요 $inc (증가) - 증가시켜주세요 $min (기존값보다 적을 때만 변경) $rename (Key값 이름 변경) db.collection('counter').updateOne({name:'게시물갯수'}, { $inc : {totalPost:1} }); 카운터 라는 컬렉션에서 name이 게시물갯수인 문서의 totalpost를 1 증가시켜주세요. DB에 업로드 해보자 //server.js app.post('/add', function(req, res){ res.send('전송완료'); var title = req.body.title; var date = req.body.date; db.collec..
Node.js로 웹서비스 만들기 9일차 MongoDB에서 전체 게시물 갯수를 관리할 수 있도록 해보자 cloud.mongodb.com의 Database 에서 collection을 하나 추가한다 (ex. counter) 이 컬렉션으로 전체 게시물 갯수를 관리할 것이다. totalPost : 전체 게시물 갯수를 기록할 것 name : 이 항목의 이름이다. //server.js db.collection('counter').findOne({name: '게시물갯수'}, function(error, result){ var 전체게시물갯수 = result.totalPost; console.log(전체게시물갯수); }); counter라는 컬렉션에서 name이 게시물갯수 라는 문서의 totalPost를 가지고 온다 (현재는 0이다) 이제 게시물을 한개 올릴때..
Node.js로 웹서비스 만들기 8일차 DB에 저장된 모든 데이터를 불러오는 방법 (Mongo DB) //server.js var db; MongoClient.connect('mongodb+srv://당신의아이디:당신의패스워드@cluster0.wg0xpz1.mongodb.net/당신의DB이름?retryWrites=true&w=majority', function(error, client){ if(error){ return console.log(error) } db = client.db('todo'); //여기에서 디비를 정의했었지 }); (지난번에 작성했던 내용) //server.js app.get('/list', function(req, res){ db.collection('post').find().toArray(function(err, re..
Node.js로 웹서비스 만들기 7일차 서버에서 html 말고 ejs 파일 보내주는 법 //server.js app.get('/list', function(req, res){ res.render('list.ejs'); }); ejs 파일은 html파일이랑 똑같은데 html 안에다가 서버 데이터를 넣을 수 있음 이런 식으로 중요) EJS파일은 views 폴더에 넣어야 됨 ejs 확장자는 처음 알았다.