>  기사  >  백엔드 개발  >  javascript - jquery는 post 메소드를 사용하여 데이터를 요청합니다. 헤더에 매개변수를 전달하는 방법은 무엇입니까?

javascript - jquery는 post 메소드를 사용하여 데이터를 요청합니다. 헤더에 매개변수를 전달하는 방법은 무엇입니까?

WBOY
WBOY원래의
2016-08-04 09:20:581220검색

인터넷에서 이 방법을 찾았습니다:
$.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를 추가하여 요청이 "단순하지 않게" 되었다는 것입니다. 요청이 단순하지 않은 경우 브라우저는 먼저 보안상의 이유로 preflightOPTIONS 메소드를 사용하여 소위

요청을 보냅니다.

교차 도메인에 대한 자세한 내용은 공개 API 및 CORS 구축을 읽어보는 것이 좋습니다

질문 이해합니다. 중복되는 부분을 제거하시면 괜찮을 것 같습니다. header

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