2012-10-30 3 views
2

가능한 중복 :
XmlHttpRequest error: Origin null is not allowed by Access-Control-Allow-Origin
XMLHttpRequest cannot load file://… Origin null is not allowed by Access-Control-Allow-OriginXMLHttpRequest의 : 원점 널 (null)이 액세스 제어 - 허용 - 원산지에 의해 허용되지 않습니다

내 JSON 파일을 같은 열려고하고 있습니다 :

jQuery.getJSON('../data/json/en/nodesData.json', 
     function(data){ 
      jQuery.each(data, function(){ 
        //do something... 
      }) 
    }) 

이것은 f Chrome의 ollowing 오류 :

XMLHttpRequest에서 file : /// C : /URL/data/json/en/nodesData.json을로드 할 수 없습니다. Origin-null은 Access-Control-Allow-Origin에 의해 허용되지 않습니다.

문제점 : json을 검색하려면 어떻게해야합니까?

+0

이 스크립트는 로컬 컴퓨터의 페이지 또는 웹에 있습니까? –

+0

로컬 컴퓨터에서 작업하고 있습니다. 내 응용 프로그램은 Jquery를 기반으로합니다 –

+1

로컬 컴퓨터에 웹 서버를 설치할 수 있습니까? 그것은이 일을하고, 당신의 삶을 편하게 해줄 것입니다. http://www.apachefriends.org/en/xampp.html –

답변

1

Same Origin Policy을 살펴보십시오.

기술적으로 다른 도메인에 있기 때문에 파일을로드 할 수 없습니다. 전화 번호는 localhost/<Path>/nodesData.json입니다.

+0

localhost를 통해 어떻게 호출 할 수 있습니까? 나는 서버가 없다. 내 애플리케이션은 Jquery를 기반으로한다. –

+1

크롬에서 작동하게하려면 [이 답변] (http://stackoverflow.com/questions/3102819/chrome-disable-same-origin-policy)을 시도하십시오. – Christoph

+0

해결책이 아닌가?: –

2

보안상의 이유로 로컬 파일 시스템에 AJAX 호출을 할 수 없습니다. 일부 브라우저는 이것을 허용하지만 다른 브라우저는 허용하지 않습니다. Chrome에는이 기능을 사용할 수있는 플래그가 있지만 기본적으로 해제되어 있습니다.

+0

이 요청을 받아들이도록 Chrome을 구성 할 수 있습니까? –

+0

답변보기 : http://stackoverflow.com/questions/ 3102819/chrome-disable-same-origin-policy –

4

이러한 제한 사항에 부딪치지 않도록 Apache/IIS 같은 로컬 서버를 실행해야 HTML/JavaScript 코드를 실행할 수 있습니다.

제한을 제거하는 플래그 --allow-file-access-from-files으로 브라우저를 시작할 수 있습니다.

관련 문제