2011-07-29 3 views
2

clientaccesspolicy.xml 읽을되고있다 :실버 - 투 - WCF 크로스 도메인 예외지만, clientaccesspolicy.xml이 성공적으로

<?xml version="1.0" encoding="utf-8"?> 
<access-policy> 
    <cross-domain-access> 
    <policy> 
     <allow-from http-request-headers="*"> 
     <domain uri="*" /> 
     </allow-from> 
     <grant-to> 
     <resource path="/" include-subpaths="true" /> 
     </grant-to> 
    </policy> 
    </cross-domain-access> 
</access-policy> 

crossdomain.xml : 여기에 화려한

<?xml version="1.0"?> 
<!DOCTYPE cross-domain-policy> 
<cross-domain-policy> 
    <allow-http-request-headers-from domain="*" headers="*" secure="true" /> 
</cross-domain-policy> 

아무것도, 그것은 WCF의 표준 설정 수백만의 서비스는 Silverlight 클라이언트가 액세스 할 수 있도록 허용합니다. 불행하게도이 설정은 내가 배포 한 실제 환경에서 작동하지 않습니다. 배포를 테스트하는 데 사용되는 사전 제작 환경은 라이브 (또는 시스템 관리자의 소유권 주장)와 동일하게 설정되며 모든 것이 완벽하게 작동하므로 혼란 스럽습니다.

시스템 관리자 중 한 명에게 HTTPDebuggerPro를 사용하여 Silverlight 클라이언트의 요청을 추적하고 클라이언트가 clientaccesspolicy.xmlcrossdomain.xml을 모두 가져오고 있음을 보여줍니다 (HTTP 상태 200). 그러나 이러한 파일을 요청한 후 클라이언트는 서비스에 대한 호출을 시도하고 바로 CrossDomainException을받습니다.

또한 시스템 관리자가 Silverlight 클라이언트가 호스팅 된 상자의 Internet Explorer의 "허용 된 사이트"목록에 WCF 서비스 URL을 추가하려고 시도했지만 (마지막 단락의 마지막 문장 인 http://blogs.msdn.com/b/fiddler/archive/2010/11/22/fiddler-and-silverlight-cross-zone-cross-domain-requests.aspx) 어느 쪽도 일하지 않았다.

할아버지!

+0

솔루션을 찾을 수 있었습니까? 동등한 것을 직면하고 있습니다 – Maximus

답변

0

clientaccesspolicy.xml이 도메인의 루트에 있습니까?

+0

두 파일 모두 서비스가 가상 응용 프로그램 (C : \ inetpub \ wwwroot \ MyServices는 IIS의/MyServices에 매핑되고 crossdomain.xml은 C : \ inetpub \ wwwroot에 있음)으로 호스팅되는 하위 디렉터리에 있습니다. \ MyServices \ crossdomain.xml). –

+0

도메인의 루트로 옮길 수 있습니까? MSDN에 따르면, 크로스 도메인 액세스를 허용하도록 서비스를 구성하기 위해 서비스가 호스팅되는 도메인의 루트에 있어야합니다. " – thomasmartinsen

+0

두 .xml 파일은 모두 C : \ inetpub \ wwwroot \ 및 C : \ inetpub \ wwwroot \ MyServices \에 있습니다. –

관련 문제