2009-04-20 2 views
5

와 나는 점점 계속 다음과 같은 오류의 :아약스 문제가 있으십니까? activexobjects

캐치되지 않는 예외 : [예외 ... "구성 요소는 반환 된 오류 코드 : 0X80004005 (NS_ERROR_FAILURE) nsIXMLHttpRequest.send]"nsresult : "0X80004005 (NS_ERROR_FAILURE)"위치 "JS 프레임 :: http://site/cms/js/interface.js :: doAjaxCall :: 라인 (300)은"데이터 없음]

 

캐치되지 않는 예외 : 예외 ... "컴포넌트 실패 리턴 코드 : 0X80004005 (NS_ERROR_FAILURE) nsIXMLHttpRequest.send] "nsresult"0X80004005 (NS_ERROR_FAILURE) "위치"JS 프레임 :: http://site/cms/js/interface.js :: doAjaxCall :: 라인 (300)은 "데이터 없음]

줄 0

이것은 doAjaxCall

function doAjaxCall(cmd,params) { 
    var postdata='cmd='+cmd+'&params='+params; 

    var a=sajax_init_object(); 
    if (a) { 
    a.open("POST","ajax_handler.php", false); 
    a.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
    a.send(postdata);      <====Line 300 
     document.body.style.cursor="default"; 

    if(a.readyState == 4) { 
     return a.responseText; 
    } else { 
     alert("We where unable to execute the ajax call."); 
    } 
    } 

function sajax_init_object() { 
    var A; 
    try { 
     A=new ActiveXObject("Msxml2.XMLHTTP"); 
    } catch (e) { 
     try { 
      A=new ActiveXObject("Microsoft.XMLHTTP"); 
     } catch (oc) { 
      A=null; 
     } 
    } 
    if(!A && typeof XMLHttpRequest != "undefined") 
     A=new XMLHttpRequest(); 
    if (!A) 
     alert("Could not create connection object."); 
    return A; 
} 

어떤 생각의와 기능인가?

+0

도메인의 외출이 있습니다 : 그것은

가에서 자세한 내용을 참조하십시오 게코 기반 브라우저 (예를 들어 파이어 폭스)에서 작동하지 않습니다? 상대 URL 또는 절대 주소를 사용하고 있습니까? –

답변

1

Javascript의 보안 제한 때문에 XMLHttpRequest를 통해 원격 도메인에서 정보를 검색 할 수 없습니다. 프록시가 필요하다고 생각합니다!

+0

여기를 참고하십시오 : https://developer.mozilla.org/En/HTTP_Access_Control – piero

+0

코드는 상대 URI를 사용합니다. 원격 도메인은 어디로 들어 옵니까? – Quentin

+0

다른 도메인의 콘텐트를 제어 할 수 있다면 보안 헤더'Access-Control-Allow-Origin : *'* = 와일드 카드를 사용하여 사이트에서 AJAX 호출을 허용 할 수 있으며 쉼표 목록을 제공 할 수 있습니다 도메인의 EG'* .facebook.com, facebook.com' –