2017-12-16 2 views
0

바닐라 js에서 AJAX를 배우고 있습니다. 다음 코드로 요청을 받았습니다 (AJAX).AJAX를 통해 크롬 파일을 가져올 수 없습니다.

document.addEventListener('DOMContentLoaded',() => { 
console.log('ready!'); 
let xhr = new XMLHttpRequest(); 
xhr.onreadystatechange =() => { 
    if (xhr.readyState === 4) 
     document.getElementById('file-data').innerText = xhr.responseText; 
    xhr.send(); 
} 
xhr.open('GET', 'file:///E:ada/kk.js', true); 
}); 

이 파이어 폭스에서 완벽하게 작동하지만 크롬에서 나는 다음과 같은 오류가 점점 오전 : -

kk.js:7 Failed to load file:///E:/ada/kk.js: Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https. 

xhr.onreadystatechange의 @의 kk.js : 당신이로드되기 때문이다 (7)

kk.js:7 Uncaught DOMException: Failed to execute 'send' on 'XMLHttpRequest': The object's state must be OPENED. 
at XMLHttpRequest.xhr.onreadystatechange (file:///E:/ada/kk.js:7:9) 
at XMLHttpRequest.xhr.onreadystatechange (file:///E:/ada/kk.js:7:9) 
at HTMLDocument.document.addEventListener (file:///E:/ada/kk.js:9:5) 

답변

1

을 로컬 컴퓨터에서 파일을 가져오고 http 호출이 아니기 때문에 cors 오류 메시지가 표시됩니다.

URL에 http://example.com/path/to/file과 같은 파일을 호스팅하거나 로컬 서버에서 제공해야합니다.

관련 문제