2012-04-06 2 views
2

내가 해결할 수없는 문제가 발생했습니다.IIS 7 Cors Ajax 비누 요청

HTTPS를 호출 할 수 있도록 Cors가 설정된 Apache에서 일부 js (jquery) POST 비누 (PHP 이상) 요청 코드가 작동하며 정상적으로 작동합니다.

내가 IIS7으로 마이그레이션 한 설정 응답 헤더 :

Access-Control-Allow-Origin = * 
Access-Control-Allow-Methods = POST` 

및 기본

application/x-www-form-urlencoded 

을 보낼 때 지금 strangly가 거부

Content-Type: text/xml; 

내보내지만, 이상하게도 나는 응답을 얻는다. (물론 Soap 서버의 오류 응답이지만 여전히 Cors가 t 그의).

iis 헤더에 설정해야 할 사항이 있다면 궁금한 점이 있습니까? 나는 하루 동안 그러나 행운이없는 것에 대한 대답을 찾으려고 노력했다. 내 생각 엔 약 Access-Control-Allow-Headers이지만 여전히 유효한 예제를 찾을 수 없습니다. 당신은 또한 목록에 다른 헤더를 넣어 할 수 있습니다

Access-Control-Allow-Headers: Content-Type 

:

+0

Java REST 서비스에는 요청 내용 유형을 시행하는'@ Consumes' 주석이 있습니다. 아마도 당신은 그 라인을 따라 무언가를 조정해야합니다. – dldnh

+0

같은 도메인에서 설정할 때 문제가 없지만 cors를 사용할 때만 문제가 발생합니다 (일부 페이지에서 데이터를 수집 한 다음 https를 통해 지문을 보내 서비스합니다). 전에 말했듯이 아파치에서 부드럽게 작동하지만, iis 7로 포팅해야합니다. 그래서 공제액은 Access Control Allows 헤더에 연결되어 있지만 잘못된 것일 수도 있습니다. – specone

답변

2

는 다음과 같은 헤더를 설정해야합니다. 추가 할 헤더를 파악하는 가장 좋은 방법은 요청에서 Access-Control-Request-Headers 헤더를 검사하고 요청한 값을 확인한 다음 위의 응답에 해당 값을 표시하는 것입니다.

이 헤더에 Content-Type을 포함해야하는 이유는 비표준 값 ('application/x-www-form-urlencoded'이 표준 값임)을 요구하기 때문입니다.

+0

mg, 모든 문서를 읽은 후 stuf 나는 headrs가 헤더 필드의 이름이 아닌 형식을 유지해야한다는 것을 더 많이 생각했습니다. 심지어 dev에 모질라 예제는 작동하지 않았다. 신의 축복 u;] – specone