인터넷에서 이 방법을 찾았습니다:
$.ajax({
<code> //请求类型,这里为POST type: 'POST', //你要请求的api的URL url: url , //是否使用缓存 cache:false, //数据类型,这里我用的是json dataType: "json", //必要的时候需要用JSON.stringify() 将JSON对象转换成字符串 data: JSON.strigify({key:value}), //data: {key:value}, //添加额外的请求头 headers : {'Access-Control-Allow-Origin':'*'}, //请求成功的回调函数 success: function(data){ //函数参数 "data" 为请求成功服务端返回的数据</code>
},
});
그러나 프롬프트:
요청 헤더 필드 Access-Control-Allow-Origin은 실행 전 응답의 Access-Control-Allow-Headers에 의해 허용되지 않습니다.
는 이미 in PHP 코드에서 Access-Control-Allow-Headers 값이 *로 설정되어 있는데 여전히 오류가 보고됩니다. 해결책이 있나요?
인터넷에서 이 방법을 찾았습니다:
$.ajax({
<code> //请求类型,这里为POST type: 'POST', //你要请求的api的URL url: url , //是否使用缓存 cache:false, //数据类型,这里我用的是json dataType: "json", //必要的时候需要用JSON.stringify() 将JSON对象转换成字符串 data: JSON.strigify({key:value}), //data: {key:value}, //添加额外的请求头 headers : {'Access-Control-Allow-Origin':'*'}, //请求成功的回调函数 success: function(data){ //函数参数 "data" 为请求成功服务端返回的数据</code>
},
});
그러나 프롬프트:
요청 헤더 필드 Access-Control-Allow-Origin은 실행 전 응답의 Access-Control-Allow-Headers에 의해 허용되지 않습니다.
는 이미 in PHP 코드에서 Access-Control-Allow-Headers 값이 *로 설정되어 있는데 계속 오류가 발생합니다. 해결 방법이 있나요?
먼저 preflight
문제가 발생하는 이유는 귀하의 요청이 더 이상 "단순 요청"이 아니기 때문입니다. 크로스 도메인 문제에서는 특정 조건을 결합한 일부 요청을 종종 단순 요청이라고 합니다. '간단요청'의 조건을 만족하는 것은 다음과 같습니다.
요청 유형은 GET
, POST
, HEAD
중 하나여야 합니다. 요청 헤더(Header)에는 다음만 포함될 수 있습니다.
수락
언어 수락
콘텐츠 언어
마지막 이벤트 ID
콘텐츠 유형: application/x-www-form-urlencoded, multipart/form-data, text/plain만 허용
귀하의 문제는 헤더 Access-Control-Allow-Origin
를 추가하여 요청이 "단순하지 않게" 되었다는 것입니다. 요청이 단순하지 않은 경우 브라우저는 먼저 보안상의 이유로 preflight
OPTIONS
메소드를 사용하여 소위
교차 도메인에 대한 자세한 내용은 공개 API 및 CORS 구축을 읽어보는 것이 좋습니다
질문 이해합니다. 중복되는 부분을 제거하시면 괜찮을 것 같습니다. header