요청의 Origin 헤더 내용을 복사하는 Access-Control-Allow-Origin 헤더로 HTTP OPTIONS 메소드에 대한 응답을 제공하려고합니다.액세스 제어 허용 - 원본 헤더가 작동하지 않습니다 - 내가 뭘 잘못하고 있니?
내가 알아낼 수없는 이유로 이것은 분명히 작동하지 않습니다.
는 TL; DR : 옵션에서 응답은 말한다 :
Access-Control-Allow-Origin: http://10.0.0.105:9294
이후의 GET가 있습니다
Origin:http://10.0.0.105:9294
크롬은 말한다 :
Origin http://10.0.0.105:9294 is not allowed by Access-Control-Allow-Origin
하지 무슨 일? 크롬의 개발자 도구 창에 찾고으로
세부 더 많이 ...
, 요청 헤더는 다음과 같습니다
OPTIONS /user/kris HTTP/1.1
Host: 10.0.0.104:8080
Connection: keep-alive
Access-Control-Request-Method: GET
Origin: http://10.0.0.105:9294
User-Agent: Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.75 Safari/537.1
Access-Control-Request-Headers: origin, x-requested-with, content-type, accept
Accept: */*
Referer: http://10.0.0.105:9294/
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-GB,en-US;q=0.8,en;q=0.6
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
응답 헤더는 다음과 같습니다
는HTTP/1.0 200 OK
Date: Mon, 13 Aug 2012 11:23:45 GMT
Server: WSGIServer/0.1 Python/2.7.3
Content-Length: 0
Access-Control-Allow-Methods: GET, PUT, POST, DELETE, HEAD, OPTIONS
Access-Control-Max-Age: 10
Access-Control-Allow-Origin: http://10.0.0.105:9294
Access-Control-Allow-Headers: X-Requested-With, Authorization, X-Huzu-User, Content-Type, Accept
Content-Type: text/html; charset=UTF-8
jQuery를은을 전송 한 후 OPTIONS가 위의 응답을 요청하면 2 가지 이상한 일이 발생합니다. 옵션 응답 (여기서는 200이다) 에러로 현상 콘솔에 표시 : GET 요청이 거부
OPTIONS http://10.0.0.104:8080/user/kris 200 (OK)
후. 콘솔 오류 :
XMLHttpRequest cannot load http://10.0.0.104:8080/user/kris. Origin http://10.0.0.105:9294 is not allowed by Access-Control-Allow-Origin.
나는 볼 수 없습니다. 내가 도대체 뭘 잘못하고있는 겁니까?
여기에 게시하는 데 사용할 수있는 jQuery 코드에 대한 최소한의 실패 사례는 없습니다. javascript 코드에 이상한 점이 없다고 가정합니다. 즉, 위에 나온 OPTIONS 요청의 결과로 단일 jQuery get()입니다. 내 질문은 : 응답에 무엇이 잘못 되었습니까? – scav
나만인가, 아니면 호스트 URL (10.0.0.104:8080)과 referer url (10.0.0.105:9294/) 사이에 차이점이 있습니까? – rene
@rene 예. 내 서버는 내 로컬 컴퓨터 (10.0.0.104:8080)에서 실행되는 python wsgi 응용 프로그램이며, 크로스 사이트 테스트는 10.0.0.105:9294에서로드하는 페이지에서 발생합니다.나는 referer가 액세스 제어에 어떤 영향을 미치는지 모른다. 그게 관련 있다고 생각합니까? 그렇다면 어떻게해야합니까? – scav