🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

  • 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

로그인 쿠키

21.08.19 16:05 작성 조회수 109

0

안녕하세요.

로컬에서 작업 후 https 적용한 ec2 로 에서 테스트 중인데요.

쿠키가 생성된 것은 맞는 거 같은데 application 탭에는 쿠키가 없네요ㅠㅠ 그래서 소셜 로그인을 한 후에도

쿠키 공유가 되지 않고 있는 것 같습니다.. deserialize 가 실행이 안되는데 쿠키가 전달이 안되어서 그런 거겠죠?

오늘 오전부터 이것때문에 헤매는데 어느 부분이 문제인지 잘 찾아지지가 않네요

back/app.js


if (process.env.NODE_ENV === 'production') {
app.enable('trust proxy');
app.use(morgan('combined'));
app.use(hpp());
app.use(helmet({ contentSecurityPolicy: false }));
app.use(
cors({
origin: frontUrl,
credentials: true,
}),
);
} else {
app.use(morgan('dev'));
app.use(
cors({
origin: true,
credentials: true,
}),
);
}


...



app.use('/', express.static(path.join(__dirname, 'uploads')));
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.use(cookieParser(process.env.COOKIE_SECRET));
app.use(
session({
saveUninitialized: false,
resave: false,
secret: process.env.COOKIE_SECRET,
cookie: {
httpOnly: true,
secure: true,
domain: process.env.NODE_ENV === 'production' && '.filer.pro',
},
}),
);




답변 1

답변을 작성해보세요.

0

프론트 서버랑 백엔드 서버 도메인이 다른가요? 도메인이 다르면 쿠키 공유가 어렵습니다.

도메인이 같다면 프론트에서 withCredentials 옵션 주셨는지 확인해보세요.

d\/b님의 프로필

d\/b

질문자

2021.08.19

AWS에 배포하기 - 도메인 연결하기 수업에 나온 그대로 했는데 그러면 도메인이

같은 거 맞나요? 프론트에 withCredentials 옵션도 true 가 되어있는데 안되네요 ..

d\/b님의 프로필

d\/b

질문자

2021.08.19

아래 사진처럼 콜백이 http 랑 https 두개에 가길래 저게 문제인가해서

카카오 redirect url 에 가서 http 로 등록해두었던 콜백 주소를 지워주고 하니까 아예 오류가 나는데요.

그래서 다시 http 콜백주소도 등록해뒀습니다.

저건 쿠키공유 문제랑 상관이 없는 게 맞겠죠?

d\/b님의 프로필

d\/b

질문자

2021.08.19

set-cookie 가 아예 없는 것 같은데 카카오로그인을 잘못 설정해서 쿠키가 아예 생성이 안된걸까요?

카카오 로그인이요? 카카오 로그인은 직접 해보신거죠? 이거 백엔드서버에서 프론트서버로 쿠키를 보내주는 과정이 필요합니다.

d\/b님의 프로필

d\/b

질문자

2021.08.19

로컬에서 카카오랑 네이버 로그인 다 실행이 되고 전혀 문제가 없는데요 ㅠㅠ 

front 와 back url 바꿔주고 cookie 옵션 secure : true 로만 바꾼 상태에서

aws 로 git pull 했거든요.

그랬을 때 윗 댓글의 사진과 같은 상태인데 저 사진 상태라면 아예 쿠키가 생성이 안된 게 맞나요?

d\/b님의 프로필

d\/b

질문자

2021.08.19

해결했습니다 감사합니다!

채널톡 아이콘