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

home2 게시판 Node.js, Express 게시판 CORS 질문있습니다. 내일 면접인데 발등에 불떨어졌어요

CORS 질문있습니다. 내일 면접인데 발등에 불떨어졌어요

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

    변준성
    참가자
    안녕하세요 선생님 제가 리액트 + node.js로 풀스택 웹사이트를 만들었습니다.
    프론트엔드 리포와 백엔드 리포 둘다 vercel로 배포하였습니다. 백앤드에는 cors()를 통해서 풀어놨고, 개발 환경에서는 잘 작동이 되었습니다
    배포하고 나서 axios 요청의 url을 배포한 백앤드 url로 변경하였습니다. 그 결과 이상하게 GET 요청은 잘 받아지는데, POST, PUT, DELETE 요청
    이 되지를 않습니다. 구글링도 하고 챗지피티도 써가면서 강제로 res에 header도 삽입하고 했는데 되지를 않습니다.
    어떻게 해야할까요...
    서버 cors 코드:
    var cors = require("cors");
    app.use(cors());
    app.use((req, res, next) => {
      res.setHeader("Access-Control-Allow-Origin", "*"); 
      res.setHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS");
      res.setHeader("Access-Control-Allow-Headers", "Content-Type, Authorization");
      
      if (req.method === "OPTIONS") {
        return res.sendStatus(200);
      }
      next();
    });
    
    
    프론트엔드 axios 코드
         function handleSave(){
          console.log('왜 안되는거냐 ㄹㅇㅇ')
            axios.post('https://hireloper-backend.vercel.app/api/addExperience', {
                title: title,
                company: company,
                description: description,
                id: user.id
            })
            .then(response => {
                console.log('Experience added:', response.data);
                setUserExperiences([...userExperiences, response.data]);
            })
            .catch(error => {
                console.error('Error adding experience:', error);
            }).finally(() => {
              setTitle("");
              setCompany("");
              setDescription("");
            })
        }
    
    
    POSTMAN으로 저 배포된 URL에 POST 요청하면 잘 되는 상황입니다
    #136826

    변준성
    참가자
    app.options("*", cors())
    이런것도 넣어보고 이것 저것 다 해봤습니다
    #136828

    codingapple
    키 마스터
    https://vercel.com/guides/how-to-enable-cors#enabling-cors-using%C2%A0vercel.json
    vercel.json 파일 만들어서 cors 설정해서 다시 올려봅시다
    #136832

    변준성
    참가자
    와,, 바로 됐습니다.. 감사합니다!! 인턴붙으면 다 선생님 덕분입니다
4 글 보임 - 1 에서 4 까지 (총 4 중에서)
  • 답변은 로그인 후 가능합니다.

About

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

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

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