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

home2 게시판 Node.js, Express 게시판 MongoDB 셋팅하기 (무료 호스팅도 받아보자) // 연결 오류

MongoDB 셋팅하기 (무료 호스팅도 받아보자) // 연결 오류

5 글 보임 - 1 에서 5 까지 (총 5 중에서)
  • 글쓴이
  • #9811

    유근형
    참가자

    위 강의 듣던 중 작성하여주신 것 동일하게 복사 후 아래와 같이url 부분의 아이디와 패스워드를 제 꺼로 바꿨습니다.

    const express = require('express')
    const bodyParser= require('body-parser')
    app.use(bodyParser.urlencoded({extended: true}))
    const app = express()
    const MongoClient = require('mongodb').MongoClient

    MongoClient.connect('mongodb+srv://keunbro:q1w2e3r4@cluster0.ivrtx.mongodb.net/myFirstDatabase?retryWrites=true&w=majority', function(에러, client){
      if (에러) return console.log(에러)
      app.listen(8080, function() {
        console.log('listening on 8080')
      })
    })

    정말 똑같이 복사했는데 터미널 창에 nodemon server.js (파일이름도 동일하게 server.js입니다)치니까

    아래와 같은 메세지가 뜹니다

     

    [nodemon] restarting due to changes...
    [nodemon] starting node server.js
    C:\Users\user\Desktop\Newnode\server.js:3
    app.use(bodyParser.urlencoded({extended: true}))
    ^

    ReferenceError: Cannot access 'app' before initialization
    at Object.<anonymous> (C:\Users\user\Desktop\Newnode\server.js:3:1)
    at Module._compile (node:internal/modules/cjs/loader:1108:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1137:10)
    at Module.load (node:internal/modules/cjs/loader:973:32)
    at Function.Module._load (node:internal/modules/cjs/loader:813:14)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:76:12)
    at node:internal/main/run_main_module:17:47
    [nodemon] app crashed - waiting for file changes before starting...

     

     

    혹시나해서 

    app.use(bodyParser.urlencoded({extended: true})) 이것을

    app.use(express.urlencoded({extended: true})) 로 바꾸어보고 실행시켜보니

    아래와 같이 메세지가 뜨네요

     

    [nodemon] restarting due to changes...
    [nodemon] starting node server.js
    C:\Users\user\Desktop\Newnode\server.js:3
    app.use(express.urlencoded({extended: true}))
    ^

    ReferenceError: Cannot access 'app' before initialization
    at Object.<anonymous> (C:\Users\user\Desktop\Newnode\server.js:3:1)
    at Module._compile (node:internal/modules/cjs/loader:1108:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1137:10)
    at Module.load (node:internal/modules/cjs/loader:973:32)
    at Function.Module._load (node:internal/modules/cjs/loader:813:14)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:76:12)
    at node:internal/main/run_main_module:17:47
    [nodemon] app crashed - waiting for file changes before starting...

     

     

    어떻게 해결해야할까요? ㅠㅠ

    #9812

    유근형
    참가자

    아래 게시글을 참고하여 const app = express() 과
    app.use(express.urlencoded({extended: true}))의 순서를 바꿔본 후 실행하였는데,

    아래와 같은 또다른 오류에 직면했습니다;; 이게 왜그런것일까요??

     

    [nodemon] restarting due to changes...
    [nodemon] starting node server.js
    (node:10544) [MONGODB DRIVER] Warning: Current Server Discovery and Monitoring engine is deprecated, and will be removed in a future
    version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
    (Use node --trace-warnings ... to show where the warning was created)
    MongoNetworkError: failed to connect to server [cluster0-shard-00-00.ivrtx.mongodb.net:27017] on first connect [MongoError: Authentication failed.
    at Connection.messageHandler (C:\Users\user\Desktop\Newnode\node_modules\mongodb\lib\core\connection\connection.js:359:19)
    at Connection.emit (node:events:378:20)
    at processMessage (C:\Users\user\Desktop\Newnode\node_modules\mongodb\lib\core\connection\connection.js:451:10)
    at TLSSocket.<anonymous> (C:\Users\user\Desktop\Newnode\node_modules\mongodb\lib\core\connection\connection.js:620:15)
    at TLSSocket.emit (node:events:378:20)
    at addChunk (node:internal/streams/readable:313:12)
    at readableAddChunk (node:internal/streams/readable:288:9)
    at TLSSocket.Readable.push (node:internal/streams/readable:227:10)
    at TLSWrap.onStreamRead (node:internal/stream_base_commons:190:23) {
    ok: 0,
    code: 8000,
    codeName: 'AtlasError'
    }]
    at Pool.<anonymous> (C:\Users\user\Desktop\Newnode\node_modules\mongodb\lib\core\topologies\server.js:438:11)
    at Pool.emit (node:events:378:20)
    at C:\Users\user\Desktop\Newnode\node_modules\mongodb\lib\core\connection\pool.js:562:14
    at C:\Users\user\Desktop\Newnode\node_modules\mongodb\lib\core\connection\pool.js:1009:9
    at callback (C:\Users\user\Desktop\Newnode\node_modules\mongodb\lib\core\connection\connect.js:75:5)
    at C:\Users\user\Desktop\Newnode\node_modules\mongodb\lib\core\connection\connect.js:147:27
    at C:\Users\user\Desktop\Newnode\node_modules\mongodb\lib\core\auth\scram.js:109:14
    at _callback (C:\Users\user\Desktop\Newnode\node_modules\mongodb\lib\core\connection\connection.js:328:7)
    at Connection.messageHandler (C:\Users\user\Desktop\Newnode\node_modules\mongodb\lib\core\connection\connection.js:359:9)
    at Connection.emit (node:events:378:20)
    [nodemon] clean exit - waiting for changes before restart
     

    #9817

    codingapple
    키 마스터

    mongodb atlas에서 connect 버튼 누르면 뜨는 그 url을 잘 복사해서 다시 채워넣어봅시다

    + 그리고 db 접속용 아이디와 비번도 다시 확인하고 채워넣읍시다 

    #9818

    유근형
    참가자

    아 제대로 작동됐습니다. 무엇이 문제였는지 모르겠지만 ㅎㅎ;;;

     

    감사합니다.

    #9820

    codingapple
    키 마스터

    아마 제 url 그대로 복붙하신듯요? 사람마다 접속 url이 다릅니다 

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

About

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

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

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