"요청 헤더 필드 Access-Control-Allow-Headers는 Access-Control-Allow-Headers에 의해 허용되지 않습니다." 오류 해결
In 초기 오류를 수정하기 위해 다양한 메소드와 헤더를 허용하기 위해 요청에 헤더가 추가되었습니다. 그러나 이로 인해 새로운 오류가 발생했습니다. "요청 헤더 필드 Access-Control-Allow-Origin은 Access-Control-Allow-Headers에서 허용되지 않습니다."
CORS 및 실행 전 요청 이해
이 문제는 브라우저가 특정 콘텐츠 유형의 교차 출처 요청에 대해 실행 전 OPTIONS 요청을 보낸다는 사실에서 발생합니다. 기본적으로 Angular는 이 실행 전 요청을 트리거하는 application/json 콘텐츠 유형으로 데이터를 보냅니다.
서버 응답 및 헤더
서버는 명시적으로 액세스를 허용해야 합니다. 오류를 방지하기 위해 응답에 Control-Allow-Headers 헤더가 있습니다. 그렇지 않으면 브라우저는 응답을 헤더를 허용하지 않는 것으로 해석합니다.
해결책: 콘텐츠 유형 또는 서버 응답 수정
문제를 해결하려면 클라이언트 또는 서버 구성:
1. 클라이언트 측(Angular):
기본 Angular 콘텐츠 유형을 application/x-www-form-urlencoded로 덮어쓰면 사전 요청을 트리거하지 않습니다.
$http.post(url, data, { headers : { 'Content-Type' : 'application/x-www-form-urlencoded; charset=UTF-8' } });
2. 서버 측:
또는 서버에서 Access-Control-Allow-Headers 헤더를 허용합니다. 다음 응답 헤더를 설정해야 합니다.
위 내용은 Cross-Origin 요청에서 \'요청 헤더 필드 Access-Control-Allow-Headers는 Access-Control-Allow-Headers에 의해 허용되지 않습니다\' 오류를 수정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!