클라우스 서비스 Atlasfm를 사용한다.
이에 대한 과정은 mongdb 생성 참고 사이트 를 참고했다.
아래 과정을 차근차근 따라갔다.
관련 모듈 설치
npm i bcryptjs body-parser concurrently express is-empty jsonwebtoken mongoose passport passport-jwt validator
package.json의 script 부분을 수정한다.
"scripts": { "start": "node server.js", "server": "nodemon server.js", },
위에서 얻은 MongoDB URI를 파일로 관린한다.
mkdir config && cd config && touch keys.js
//key.js module.exports = { mongoURI: "MongoDB URI" };
코드를 뜯어보는 것은 차차 해볼 것
앞서 작성한 express + react 정리 코드에 mongodb관련 코드를 덧붙였다
const express = require('express');
const mongoose = require("mongoose");
const bodyParser = require("body-parser");
const path = require('path');
const app = express();
const port = process.env.PORT || 8080; // process.env.port is Heroku's port if you choose to deploy the app there
app.use(
bodyParser.urlencoded({
extended: false
})
);
app.use(bodyParser.json());
// DB Config
const db = require("./config/keys").mongoURI;
mongoose
.connect(
db,
{ useNewUrlParser: true }
)
.then(() => console.log("MongoDB successfully connected"))
.catch(err => console.log(err));
app.listen(port, function () {
console.log(`listening on ${port}`)
});
app.use(express.static(path.join(__dirname, 'react-map-app/build')));
app.get('/', function (요청, 응답) {
응답.sendFile(path.join(__dirname, '/react-map-app/build/index.html'));
});
app.get('*', function (요청, 응답) {
응답.sendFile(path.join(__dirname, '/react-map-app/build/index.html'));
});
이러한 연결을 완성하였으니 이제는 실제 로그인 기능을 구현하도록 한다.