티스토리 뷰
이게 내 지금 컴퓨터가 휴대용 기기라 그런거 몽고 DB가 정상적으로 안도는 거 같긴 하다. 그냥 서버가 구축이 된 아틀라스 서비스를 가지고 공부를 하도록 하자.
Express Socket.io MongoDB 요렇게만 쓸수 있도록 해두자. 유니티와 연결해서 쓸수 있도록만 해두면 될듯 싶다.
이걸 추가해 준다. 강의가 알차게 필수적인거는 다 있는듯 싶다. 이거만 반복해서 따라해 보고 실전에서 만들어 보면서 필요한건 그때 그때 익히는 식으로 가야 겠다.
문득 드는 생각이 AWS에는 람다라는 서비스가 있어서 별도로 서버 구축을 안하고도 진행이 가능했는데 이건 어쩐지 모르겠다. 몽고DB 쪽에도 비슷한 클라우드 서비스가 있어야 비용면에서 쓰기가 편하지 않을까 싶다.
원래 약어는 쓰는거는 별로 좋아하지 않는 편이다. 아무래도 여러 언어 여러 프레임워크를 넘어다니기 때문에 그럴듯 싶다.
import express, {request} from "express";
const app = express()
const port = 3000
app.listen(port, () => {
console.log(`Node API app is running on ${port}`)
})
// routes
app.get('/', (request, response) => {
request.send('Hello node API')
})
TypeError: request.send is not a function
at file:///home/aigoia/OtherProjects/mongoose/server.js:11:13
at Layer.handle [as handle_request] (/home/aigoia/OtherProjects/mongoose/node_modules/express/lib/router/layer.js:95:5)
at next (/home/aigoia/OtherProjects/mongoose/node_modules/express/lib/router/route.js:149:13)
at Route.dispatch (/home/aigoia/OtherProjects/mongoose/node_modules/express/lib/router/route.js:119:3)
at Layer.handle [as handle_request] (/home/aigoia/OtherProjects/mongoose/node_modules/express/lib/router/layer.js:95:5)
at /home/aigoia/OtherProjects/mongoose/node_modules/express/lib/router/index.js:284:15
at Function.process_params (/home/aigoia/OtherProjects/mongoose/node_modules/express/lib/router/index.js:346:12)
at next (/home/aigoia/OtherProjects/mongoose/node_modules/express/lib/router/index.js:280:10)
at expressInit (/home/aigoia/OtherProjects/mongoose/node_modules/express/lib/middleware/init.js:40:5)
at Layer.handle [as handle_request] (/home/aigoia/OtherProjects/mongoose/node_modules/express/lib/router/layer.js:95:5)
영상과 달리 오류가 뜬다. 아 글고 타입 스크립트로 넘어가는거는 그냥 안하기로 했는데 이게 rider가 툴이 좋다보니 타입이 Any가 들어가게 되면 들어가는 경우를 알려 주기 때문에 어느정도 툴 선에서 버그를 잡을수 있겠더라.
이렇게 하면 된다. 리퀘스트가 리스판스였다. 중간에 깃헙이나 포스트맨 인섬니아 소개하는 건 건너 뛰자.
몽고 DB 아틀라스는 예전에 이미 만들어 놨더라. 이거 가지고 씹고 뜯고 맛보고 즐기면서 숙련도를 높여야 할듯 싶다. 일단 코딩하는 것보다 잠깐 셀을 쓰는 법부터 익히고 오자.
이게 확실히 AWS 보다 쉽긴 하다. 아무래도 다른 요소가 없이 DB만 있다보니 그런거 같다.
import express from "express"
import mongoose from "mongoose"
const app = express()
const port = 3000
const url =
mongoose.connect(url).then(() => {
console.log(`connected to MongoDB`)
app.listen(port, () => {
console.log(`Node API app is running on ${port}`)
})
}).catch((error) => {
console.log(error)
})
DB만 쓸꺼면 몽고 DB로 가르쳐 주는 편이 좋을꺼 같긴 하다. 강의도 많아서 자습하기도 편할테고 말이다. DynamoDB는 강의가 그렇게 많지는 않다. 이미 AWS에 익숙치 않으면 조금 사용하는 법이 어려울수도 있겠더라.
서버에 접근해서 권한을 부여하고 인증하는 시스템을 만들어야 하는데 그건 차차 알아가도록 하자. 일단 이거면 충분한듯 싶다.
한 20분 가까이가 서버에 접근하고 세팅하는 건데 이제 이부분은 복습을 할 필요는 없을듯 싶다.
아에 같은 내용으로 이걸 따라하는 것도 나쁘지 않을듯 싶다. 일단은 여기서는 .env로 깃에 접속에 대한 정보가 되어 있는거는 올리지 않는 걸 익히고 가자. 지금 코드를 블로그에 올리려면 계속 지웠다가 올리고 있는데 분리를 할 필요가 있을듯 싶다.
import express from "express"
import mongoose from "mongoose"
import dotenv from 'dotenv'
dotenv.config();
const app = express()
const port = 3000
mongoose.connect(process.env.DATABASE_URL).then()
mongoose.connection.on('error', (error) => console.log(error))
mongoose.connection.once('open', () => console.log(`connected to MongoDB`))
app.listen(port, () => console.log(`node is running on ${port}`))
C#에는 콜백이라는게 없고 async로 문제를 해결하다 보니 이런식에 코드가 더 좋은듯 싶다.
먼가 으음 슬슬 재미가 있어지는거 같다. 머 아직은 연결만 했을뿐이지만 말이다.
구글 로그인같이 많은 사람들이 수도없이 했을꺼 같은 작업은 GPT에게 물어보면 누구보다 잘 대답해 준다. 회사 다니기 전에는 전혀 GPT를 사용 안했었는데 이것도 회사에서 배운 좋은 수이다.
지금까지 기본 세팅으로만 시간을 쓴거 같다.
'학습 > AWS' 카테고리의 다른 글
자유자제로 다룰수 없으면 아는게 아니다 (0) | 2024.09.13 |
---|---|
몽고 DB 후반전 (0) | 2024.09.12 |
강의를 이걸로 해야 겠다 (1) | 2024.09.12 |
몽고 DB (2) | 2024.09.10 |
몽고 DB (2) | 2024.09.08 |