express GET, POST, PUT, DELETE

이태규·2021년 12월 28일
0

express

목록 보기
5/28

get 1개 찾기

const dbConn = await db.connect(dbUrl)
        const coll = dbConn.db("db202").collection("board");
        // 앞쪽이 조건
        const result = await coll.findOne({_id : no})
        console.log(result)

get 여러개 찾기

const dbConn = await db.connect(dbUrl)
        const coll = dbConn.db("db202").collection("board");

        //여러개 가져오기 find()   
        const result = await coll.find({})
        .sort({_id: -1})        // 1오름차순, -1 내림차순
        .skip((page-1) * 10)    // 생략할 개수
        .limit(10)              // 2개까지만
        .toArray()              //....toArray() 변환 > toArray는 항상 마지막에
        console.log(result)

post 글 작성하기

const dbConn = await db.connect(dbUrl)

        //db안에 db202 안에 seqboard에 들어감
        const coll = dbConn.db("db202").collection("seqboard");
        
        //글 번호 자동으로 {가져오기}, {수정하기}
        // _id가 SEQ_BOARD_NO인것을 가지고 오고,
        // seq값을 기존값에 1증가시킴
        const result = await coll.findOneAndUpdate(
            { _id : 'SEQ_BOARD_NO'}, { $inc : { seq : 1}}
        );
        
        console.log(result.value.seq)
        
       
        const coll1 = dbConn.db("db202").collection("board");
        // // collection은 파일 같은거임
        const result1 = await coll1.insertOne({
            _id : Number(result.value.seq),  //글번호(PK)
            title : req.body.title,   // 전송되는 항목 글 제목
            content : req.body.content,  //전송되는 항목 글 내용
            writer : req.body.writer, //전송되는 항목 작성자
            hit : 1,                  //조회수
            regdate : new Date()  // 현재시간
        })
        //  { acknowledged: true, insertedId: 10}
        console.log(result1);
        if( result1.insertedId > 0){
            return res.send({status:200});
        }
        return res.send({status: -1})

put db항목 수정하기(조회수 1올리기)

const dbConn = await db.connect(dbUrl)

        //db안에 db202 안에 seqboard에 들어감
        const coll = dbConn.db("db202").collection("seqboard");
        
        //글 번호 자동으로 {가져오기}, {수정하기}
        // _id가 SEQ_BOARD_NO인것을 가지고 오고,
        // seq값을 기존값에 1증가시킴
        const result = await coll.findOneAndUpdate(
            { _id : 'SEQ_BOARD_NO'}, { $inc : { seq : 1}}
        );

delete 게시글 삭제하기

const dbConn = await db.connect(dbUrl)
        const coll = dbConn.db("db202").collection("board");
        const result = await coll.deleteOne({_id: no})
        console.log(result);
        if(result.deletedCount===1){
            return res.send({status: 200})
        }
        return res.send({status:-1})

    }   
    catch(err){
        console.error(err)
        return res.send({status:-1, result: err})
    } 

put 게시글 수정하기

const no = Number(req.body.no);
        const title = req.body.title;
        const content = req.body.content

        const dbConn = await db.connect(dbUrl)
        const coll = dbConn.db("db202").collection("board");
        const result = await coll.updateOne({_id : no}, {$set: {title: title, content: content}})

        if(result.matchedCount===1){
            return res.send({status : 200})
        }
        return res.send({status: -1}) 
   }
   catch(err){
       console.error(err)
       return res.send({status: -1, error : result})
   }
profile
한 걸음씩 나아가자

0개의 댓글