작성
·
297
1
안녕하세요
spring boot과 vue 로 세팅을 진행했습니다.
강의 내용에서는 서버와 연동하는 게 없었지만,
실제 스프링과 연동을 하려고보니 이슈가 있어서요.
vue.config.js에 devServer.proxy 를 사용해서 다른 포트로 띄워진 서버에 api 콜을 요청할 때에는 브라우저에 session 값이 cookie에 잘 생성되어 있으나,
proxy를 타지 않고 서버에 api 콜을 할 경우 세션 값이 생성되지 않고 있는데요, 이로 인해 서버에서는 세션값이 없다는 메시지를 발생시킵니다.
혹시 서버에서 생성시킨 세션 쿠키를 생성시키지 못하는 이유와 해결 방법에 대해 아실까 해서 질문드립니다.
감사합니다.
답변 3
1
IE에서는 set cookie가 잘 되네요.
찾아보니, 크롬에서는 port가 붙어서 오는? 혹은 same site origin 때문에 set cookie가 안되는거라고 하는데
axios config에 withCredential: true 로 하면 된다고 하나 이렇게 했을때는 cors 문제가 발생되고 있습니다 ㅜ
0
답변 감사드립니다.
서버 쪽에서도 spring security 쪽에서 cors 필터 적용해두긴 했는데 IE에서는 동일하게 해도 세션이 잘 생성되며 세션 값을 활용할 수 있는 상황입니다ㅜㅜ
0
안녕하세요 jinhyun0504님 좋은 질문이네요. 말씀하신 내용을 제가 잘 이해했는진 모르겠지만 다른 포트(도메인)에 요청을 할 때는 서버 쪽에서 CORS 필터를 적용해줘야 합니다. 말씀하신 방법은 서버에서 CORS 필터를 적용하지 않고 클라이언트 단에서 Proxy로 우회하는 방법인데 Proxy를 쓰지 않고는 다른 포트에 접근하실 수가 없는 걸로 알고 있습니다. 충분한 답변이 되었을까요? :)