작성
·
224
0
app.get('/', (req, res) => {
res.send('Hello World!')
})
app.get('/abcd', (req, res) => {
res.send('Hello World!')
})
app.get('/api/abcd', (req, res) => {
res.send('api / abcd 입니다')
})
// src 하위에 setupProxy.js
const proxy = require("http-proxy-middleware");
module.exports = function(app) {
app.use(proxy('/api', { target: 'http://localhost:4000/'}));
};
axios.get('/') 을 주면 클라이언트의 html파일이 나와버리구요
<!DOCTYPE html> <html lang="en"> <head>~~~~~~~~~~~~~~~~ </body> </html>
axios.get('/abcd')를 주면 /api/abcd 내용이 아닌 /abcd의 내용이 나와버립니다 ㅠㅠ
프록시 설정도 잘 해주어서 오류가 안나고 있는 상황인데
왜이런 현상이 발생할까요? 혹시 이유를 알고 계신가요?
답변 1
0
존안님의 강의에서는 프록시 미들웨어가 0.19버전인가 그렇고
제 경우에는 버전2 이상입니다
프록시 설정방법이 바뀌어서 문제가 있었고
질문드렸던 사항은 제가 이해를 끝냈습니다!
https://create-react-app.dev/docs/proxying-api-requests-in-development/#configuring-the-proxy-manually
같은 오류가 있으신분들은 여기를 참고하세요
/api로 시작하는 주소로 요청을 보낼때는 5000번 포트로 자동으로 넘겨준다는 뜻입니다
이렇게 새로 빌드해보면서 에러해결하고 왜 이런 라이브러리가 나왔고 다른 해결방식은 무엇이 있는지도 보고
공식문서 찾아보고 머리싸매고 하는경험이 순간에는 고통스러워도 머리에 잘 남더라구요
새로 시작하시는분들도 저랑 같이 고통을 느껴보심은 어떨까요 흐흐~~ ^^