2013-01-17 4 views
0

URL에 대한 교차 도메인 발사 호출을 만들기위한 간단한 자바 스크립트 시스템을 만들려고합니다. 이 URL은 상태가 아닌 다른 것을 제공하지 않기 때문에 : 200 모두 정상이면 최고의 솔루션을 찾으려고합니다.자바 스크립트 교차 도메인 탈옥 요청

JSONP 솔루션을 구현하거나 "Access-Control-Allow-Origin"을 헤더에 설정하는 것은 옵션이 아닙니다.

jQuery에 의존하지 않고이 글을 쓰도록 요청 받았습니다.

내가 조사하고있는 해결책 중 하나는 url에 대한 src 속성을 사용하여 새 스크립트 요소를 만드는 것입니다. 그러나 이러한 호출이 많이있을 것이므로 각 호출 후에 정리해야합니다.

는 여기에 지금까지 생각하고있는 작업은 다음과 같습니다

var fireAndForgetGETRequest = function(url) { 
    var head = document.getElementsByTagName("head")[0]; 
    var scriptTag = document.createElement("script"); 
    scriptTag.type = "text/javascript"; 
    head.appendChild(scriptTag); 

    scriptTag.src = url; 

    setTimeout(function() { 
     head.removeChild(scriptTag); 
     scriptTag = null; 
    }, 5000); 
}; 

이 정리됩니다 스크립트 태그를 (이 경우 오초에서) 임의의 시간 후.

이 방법이 합리적인 해결책입니까? 청소를하기 전에 기다려야합니까, 아니면 즉시 요청을할까요?

전문가가 주시면 감사하겠습니다 자바 스크립트 : 당신에게서 어떤 도움

답변

7

당신이 응답을 걱정하지 않으면, 왜 XSS 공격에 자신을 열어? 이미지 요청을 통해 GET 요청을 보냅니다.

function sendData(url) { 
    function remove() { 
     img = null; 
    } 
    var img = new Image(); 
    img.onerror = remove; 
    img.onload = remove; 
    img.src = url; 
} 
+0

나는 이것을 알지 못했습니다 :) 감사합니다! – Dean

관련 문제