>  기사  >  백엔드 개발  >  내 브라우저가 Cross-Origin 응답에서 Set-Cookie 헤더를 거부하는 이유는 무엇입니까?

내 브라우저가 Cross-Origin 응답에서 Set-Cookie 헤더를 거부하는 이유는 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-21 09:08:10671검색

Why Does My Browser Reject Set-Cookie Headers from Cross-Origin Responses?

브라우저가 Cross-Origin 응답에서 Set-Cookie 헤더를 거부함

Cross-origin 리소스 공유(CORS)는 제한된 리소스를 허용하는 메커니즘입니다. 첫 번째 리소스가 제공되는 도메인 외부의 다른 도메인에서 요청되는 웹 페이지에서. 그러나 쿠키 설정을 포함하여 원본 간에 공유할 수 있는 항목에는 특정 제한이 있습니다.

교차 원본 응답에 Set-Cookie 헤더가 포함된 경우 브라우저는 보안상의 이유로 헤더 적용을 거부할 수 있습니다. . 이는 타사 웹사이트에서 쿠키를 설정하도록 허용하면 CSRF(교차 사이트 요청 위조) 공격이 발생할 수 있기 때문입니다.

이 문제를 해결하려면 클라이언트 코드에서 withCredentials 속성이 true로 설정되어 있는지 확인하세요. . 이 속성은 교차 출처 요청에 자격 증명(예: 쿠키)을 포함하도록 브라우저에 지시합니다.

JavaScript에서는 Axios 요청 구성에서 withCredentials 속성을 설정할 수 있습니다.

const axiosAuth = axios.create({
  withCredentials: true, // Correct
});

withCredentials 속성을 true로 설정하면 브라우저가 교차 출처 서버에 쿠키를 보낼 수 있게 되어 브라우저가 쿠키를 거부하는 문제를 해결할 수 있습니다. 세트-쿠키 헤더.

위 내용은 내 브라우저가 Cross-Origin 응답에서 Set-Cookie 헤더를 거부하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.