• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 Node.js, Express 게시판 유저간 채팅기능2 강의를 하다가 막혔습니다...

유저간 채팅기능2 강의를 하다가 막혔습니다...

10 글 보임 - 1 에서 10 까지 (총 15 중에서)
  • 글쓴이
  • #21345

    윤지빈
    참가자

    채팅방 데이터를 ObjectId로 바꾸면 TypeError: Argument passed in must be a Buffer or string of 12 bytes or a string of 24 hex characters

    이러한 에러가 뜹니다. 또 /chat에 접속하면 data is not defined 이런 에러코드도 발생하여 막혔습니다ㅠㅠ

     

    #21348

    codingapple
    키 마스터

    objectid로 변환하는 코드가 이상한 것이 아닐까요 

    아니면 이미 objectid 인데 변환하려는 것일 수도 있겠군요 

    #21360

    윤지빈
    참가자

    let suffered_id = req.body.suffered_id
      let savedata = {
        title: '무슨무슨채팅방',
        member: [ObjectId(suffered_id), req.user._id],
        date: new Date()
      }

    이런식으로 objectid로 변환하는 코드가 되어있고 suffered_id를 출력하면 objectid는 나오지 않습니다.

     

    #21370

    codingapple
    키 마스터

    suffered_id는 유저의 _id 문자가 잘 출력되는지 확인해보도록 합시다 

    #21374

    윤지빈
    참가자

    suffered_id와 req.user.id를 출력했을 때 둘 다 잘 나옵니다.

    #21396

    codingapple
    키 마스터

    suffered_id 출력해보면 24글자가 맞나요? 앞뒤에 공백이 있거나 그럴수도 있겠군요 

    #21403

    윤지빈
    참가자

    suffered_id를 ObjectId로 변환하여 출력이 되지 않는 오류임다ㅠㅠ 그리고 이걸 그냥 objectId가 아닌 id값으로 하면 안되는것인가요?

     

    #21411

    codingapple
    키 마스터

    그냥 id로 해도 상관없습니다

    에러메세지는 ObjectId() 안에 넣은게 24글자가 아니라고 알려주는것 같습니다 

    #21412

    윤지빈
    참가자

    아 감사합니다. 근데 /chat에 접속했을때 data is not defined라는 오류가 발생합니다..ㅠㅠㅠ

     

    #21414

    윤지빈
    참가자

    app.get('/chat', Uselogin, (req, res) => {
      db.collection('chatroom').find({ member: req.user._id }).toArray().then((result) => {
        res.render('chat.ejs', { data: result })
      })
    })

    코드는 이런식으로 작성했습니다.

10 글 보임 - 1 에서 10 까지 (총 15 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠