JavaScript로 데이터를 가져올 때 "'Access-Control-Allow-Origin' 헤더가 없습니다."
교차 원본 리소스 공유(CORS) )는 웹 브라우저가 다른 도메인에 요청을 할 수 있도록 하는 메커니즘으로, 다양한 원본으로 인해 발생하는 보안 문제를 해결합니다. CORS를 활성화하려면 서버는 응답에 'Access-Control-Allow-Origin'과 같은 특정 헤더를 포함해야 합니다.
1. CORS 프록시 사용
서버에 필요한 헤더가 부족한 경우 클라이언트와 서버 간에 CORS 프록시를 구현할 수 있습니다. CORS Anywhere와 같은 이 프록시는 누락된 헤더를 포함하도록 응답을 다시 작성하여 원본 간 요청을 활성화할 수 있습니다.
2. CORS 실행 전 요청
CORS 실행 전 요청은 서버가 원본 간 요청을 허용하는지 확인하기 위해 브라우저에서 보낸 OPTIONS 요청입니다. 실행 전 트리거를 방지하려면 다음 요청을 확인하세요.
3. 와일드카드 Access-Control-Allow-Origin 헤더 수정
브라우저는 자격 증명이 있는 요청에 대해 와일드카드(*) Access-Control-Allow-Origin 헤더가 있는 응답을 거부합니다. 대신 헤더 값은 요청 클라이언트의 원본과 일치해야 합니다. 이 문제를 해결하려면:
4. 요청 및 응답의 헤더
Access-Control-Allow-* 헤더를 설정하는 JavaScript 코드(headers.append(...))에서 줄을 제거합니다. 요청에 포함하면 안 되는 응답 헤더입니다.
위 내용은 Cross-Origin 요청 시 'No 'Access-Control-Allow-Origin' Header Present' 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!