2012-02-16 2 views
0

다른 도메인의 서비스에서 일부 XML 데이터를로드해야합니다. 내가 아약스 요청을 사용하는 경우 "원본 Null은 Access-Control-Allow-Origin이 허용하지 않습니다."라는 메시지가 나타납니다. 나는 scriptag 프록시와 XML 리더로 사용 스토어를 시도,하지만 난 catch되지 않은 구문 에러 얻을 : 예기치 않은 토큰을 < V다른 도메인에서 XML 데이터로드하는 방법

var myStore = new Ext.data.Store({ 
     model: 'myModel', 
     proxy: { 
      type: 'scripttag', 
      url : url, 
      reader: { 
       type: 'xml', 
       root: 'users' 
      } 
     }, 
     autoLoad: true 
    }); 

질문 : 다른 도메인에서로드 XML 데이터 엽차 나 다른 자바 스크립트 라이브러리를 사용하는 방법에 대해 설명합니다.

+0

XML을 보내는 백엔드를 제어 할 수 있습니까? 그렇지 않다면 ... – ManseUK

+0

아니요, 액세스 할 수 없습니다 –

+0

도메인/서버를 제어 할 수있는 html이 제공되면 해당 웹 서버에서 프록시를 설정할 수 있습니다. – ironchefpython

답변

1

1) 백엔드에 액세스 할 수있는 경우 CORS (Cross-Origing Resource Sharing)를 사용할 수 있습니다 ( how to do it). 그것은 당신이 다른 도메인에서 XML 데이터를 얻을 수 있습니다.

2) (하지만이 더러운 해킹 모양) YQL을 사용할 수없는 경우 : 모바일 장치에서 응용 프로그램을 실행할 때 here

3) 어쨌든이 문제는 멀리 가야한다.

4) 데스크톱 브라우저에서 응용 프로그램을 테스트 할 수있는 솔루션을 찾으려면 크롬을 사용하는 것이 좋습니다. 이 보안 제한을 해제하는 방법이 있기 때문에 :

chrome.exe --disable-web-security 

5) 그리고 마지막 팁을 JSONP 요청이 같은 문제를 가지고 있지 않기 때문에 JSON 서비스를 찾을 수 있습니다.

관련 문제