Frontend-Vuejs
Postman 없이 api 호출해 db table 만들기 (2) 백-프론트엔드 연동하기
jiwoolee
2021. 7. 27. 17:19
지난 게시글에서 table의 기본 형태를 만들어주었다.
table에 db의 값을 넣어서 보려면
api를 호출헤서 해당 위치에 각각의 값을 넣어주면 되겠지
api를 호출하려면 backend project랑 frontend project부터 연결해주어야겠지
vue를 node에 배포해주자
vue의 최상위 폴더인 frontend 폴더에 vue.config.js 파일을 만들자
var path = require("path")
module.exports = {
outputDir: '../backend/public',
devServer: {
proxy: {
'/api': {
target: " http://localhost:3000/ ",
changeOrigin: true,
pathRewrite: {
'/api': ''
}
}
}
}
}
터미널에 npm run build 해주면 아래처럼 파일 생성된다
여기까지가 vue를 배포 가능한 형식으로 만들어주는 단계
node를 실행했을 때 vue도 같이 실행되려면
⇒ vue에서 만든 frontend에 접근할 url을 지정해줘야 한다
backend/routes/index.js
const Router = require('koa-router')
var router = new Router();
router.get('/', function (req, res, next) {
res.sendFile(path.join(__dirname, '../public', 'index.html'));
})
//결과값으로 public에 있는 index.html을 반환
//index.html은 아까 위에서 우리가 배포가능한 형태로 바꾼 Vue!
자 그러면 잘 연동되었는지 확인을 해야겠지
backend/src/app.js에서 아래의 코드로 연동 확인하자
// 연동 확인
async function CheckConnection(req, res) {
try {
await sequelize.authenticate();
console.log('Connection has been established successfully.');
} catch (error) {
console.error('Unable to connect to the database:', error);
}
}
CheckConnection()
연동 성공
연동이 되었으니 frontend에서 api를 쓸 수 있다는 말....?!
[vue + node 배포] vue와 node 연동하기
Vue.js와 Node.js 연동
velog.io