2012-05-24 3 views
0

좋아요, 그래서 프로토 타입은 제 선택이 아니지만 클라이언트 사이트에서 사용하고 적응해야합니다.X 도메인 XML 피드

나는 사이트 A에서 통해 오는 XML 피드를 내 기능입니다 : 내가 somefeedurl.com에 대한 액세스를 허용하는 crossdomain.xml 파일을 구현하지만 난 여전히 같은 기원을 얻고있다

new Ajax.Request('somefeedurl.ashx', 
{ 
    method:'get', 
    onSuccess: function(transport){ 
     console.log("Transport: "+transport) 
     myParseXml(transport.responseXML); 
    }, 
    onFailure: function(){ 
     alert('Something went wrong...') 
    } 
}); 

: Access-Control-Allow-Origin이 허용하지 않습니다.

프로토 타입을 사용하면 어떨까요?

두 번째 질문입니다. 이 문제를 해결하기 위해 myParseXML() 함수를 실제로 실행하면 문제가 발생하지 않습니다. 즉, 피드에서 XML 데이터를 전송하려고하는 transport.responseXML입니까? XML 피드를 제공하는 다른 사이트가 없습니다 explicitly allow cross-domain requests 않는 경우

관련, 로버트

답변

0

번호, 당신은 그것을 (직접)으로 인해 sop에 Ajax를 사용하여 검색 할 수 없습니다 - 어떤 "해결 방법"일 것 보안 버그.

에 관계없이 라이브러리의 당신은 당신이 전화를 아약스 포장 사용합니다. XMLHTTPRequest에 대한

도 참조 문서, 함께 onsuccess handler will be invoked을. 두 번째 질문에 대답하려면 : 아니오, responseXML은 이미 문서에 대해 구문 분석됩니다.

+0

브라우저에서 피드 URL을 직접 입력하여 가져 오는 것은 다른 도메인에서 요청하는 것과 같지 않습니다. 죄송합니다 n00b 질문에 대한하지만 너무 도메인에 익숙하지 않은 물건을 많이 사이트에 내 XML을 생성하는 것을 선호하지만이 경우 불가능합니다 – rmccallum

+0

예. 사이트에서 XML을 가져와야합니다. 즉, 서버에서 요청을 프록시 처리해야합니다. – Bergi

+0

그래서 로컬 XML을 사용하면 프로토 타입을 파싱하는 것이 얼마나 쉬운가요? 꽤 많은 인터넷 검색을했지만 jQuery parseXML만큼 쉬운 것을 찾을 수 없습니까? – rmccallum