> 웹 프론트엔드 > JS 튜토리얼 > 올바른 서버 헤더에도 불구하고 내 Localhost CORS 요청이 stackoverflow.com에 실패하는 이유는 무엇입니까?

올바른 서버 헤더에도 불구하고 내 Localhost CORS 요청이 stackoverflow.com에 실패하는 이유는 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-12-16 11:31:11
원래의
856명이 탐색했습니다.

Why Does My Localhost CORS Request Fail to stackoverflow.com Despite Correct Server Headers?

Localhost CORS 헤더 문제

적절한 CORS 헤더로 서버를 구성했음에도 불구하고 사용자는 클라이언트 스크립트에서 localhost를 원본으로 사용하는 데 어려움을 겪습니다. .

서버 구성

서버는 다음 헤더로 설정됩니다.

Access-Control-Allow-Origin:http://localhost
로그인 후 복사

클라이언트 스크립트

클라이언트 스크립트는 XMLHttpRequest 개체를 사용합니다. ~에게 요청하다 'http://stackoverflow.com/'.

var xhr = new XMLHttpRequest();
xhr.onload = function() {
   console.log('xhr loaded');
};
xhr.open('GET', 'http://stackoverflow.com/');
xhr.send();
로그인 후 복사

오류

그러나 다음 오류로 인해 요청이 실패합니다.

XMLHttpRequest cannot load http://stackoverflow.com/. Origin http://localhost is not allowed by Access-Control-Allow-Origin.
로그인 후 복사

해결책

서버 구성이 나타나는 동안 맞습니다. 문제는 클라이언트 스크립트에서 'localhost'를 원본으로 사용하는 데 있습니다.

Chrome은 2014년에 "WontFix"로 표시된 버그로 인해 CORS 요청에 대해 localhost를 지원하지 않습니다.

해결 방법

이 문제를 방지하려면 다음으로 확인되는 도메인을 사용하세요. 127.0.0.1(예: 'localho.st')을 사용하거나 테스트 목적으로 '--disable-web-security' 플래그를 사용하여 Chrome을 실행하세요.

위 내용은 올바른 서버 헤더에도 불구하고 내 Localhost CORS 요청이 stackoverflow.com에 실패하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿