복붙노트

[JQUERY] 웹 서비스 반환에 jQuery를 호출 "아니 운송"오류

JQUERY

웹 서비스 반환에 jQuery를 호출 "아니 운송"오류

해결법


  1. 1.당신의 jQuery 페이지가 HTTP에서로드되지 않는 경우 : // localhost를 : 당신이 크로스 도메인 요청을 만들려고 노력하고 있기 때문에 54473 다음이 문제가 아마.

    당신의 jQuery 페이지가 HTTP에서로드되지 않는 경우 : // localhost를 : 당신이 크로스 도메인 요청을 만들려고 노력하고 있기 때문에 54473 다음이 문제가 아마.

    업데이트 1 이 블로그 게시물을 살펴보십시오.

    업데이트 2 이 실제로 문제 (그리고 나는 그것을 의심), 당신은 솔루션으로 JSONP을 확인 할 수 있습니다. 여기 시작하는 데 도움이 수있는 몇 가지 링크가 있습니다 :


  2. 2.이 추가 : jQuery.support.cors을 = TRUE;

    이 추가 : jQuery.support.cors을 = TRUE;

    그것은 jQuery를 크로스 사이트 스크립팅을 할 수 있습니다 (1.4 이후 도입, 저는 믿습니다).

    우리는 jQuery를 (1.3.2)의 정말 오래된 버전을 사용하고 1.6.1를 위해 그것을 교환했다. 모든 () 호출 아약스를 제외하고, 작업이었다. 문제를 해결 위의 라인을 추가.


  3. 3.한 페이지에 같은 오류가 있고, 나는이 라인을 추가 :

    한 페이지에 같은 오류가 있고, 나는이 라인을 추가 :

    <!--[if lte IE 9]>
    <script type='text/javascript' src='//cdnjs.cloudflare.com/ajax/libs/jquery-ajaxtransport-xdomainrequest/1.0.3/jquery.xdomainrequest.min.js'></script>
    <![endif]-->
    

    그리고 마침내 나를 위해 작동하지 않습니다) IE9에서 더 이상 오류가 발생했습니다.


  4. 4.제안 된 답변 중 어느 것도 완전히 나를 위해 일하지 않는다. 내 유스 케이스는 약간 다른 (IE9에서 S3 .json 파일에 아약스 GET을 수행)입니다. 설정 jQuery.support.cors = TRUE; 없음 전송 오류를 제거있어하지만, 난 여전히 사용 권한이 거부되었습니다 오류를 얻고 있었다.

    제안 된 답변 중 어느 것도 완전히 나를 위해 일하지 않는다. 내 유스 케이스는 약간 다른 (IE9에서 S3 .json 파일에 아약스 GET을 수행)입니다. 설정 jQuery.support.cors = TRUE; 없음 전송 오류를 제거있어하지만, 난 여전히 사용 권한이 거부되었습니다 오류를 얻고 있었다.

    무엇 나를 위해 일을 한 것은 XDomainRequest를 사용하는 IE9 강제로 jQuery를-ajaxTransport-XDomainRequest를 사용하는 것이 었습니다. 설정 jQuery.support.cors을 필요로하지 않았다이 사용 = TRUE;


  5. 5.난 JSONP '= 데이터 유형을 사용하여 해결 = 'JSON'데이터 유형 장소에서

    난 JSONP '= 데이터 유형을 사용하여 해결 = 'JSON'데이터 유형 장소에서


  6. 6.나도이 문제를 가지고 모든 솔루션 중 하나 위에 주어진 실패 또는 클라이언트 웹 서비스 제한으로 인해 적용하지 않았다.

    나도이 문제를 가지고 모든 솔루션 중 하나 위에 주어진 실패 또는 클라이언트 웹 서비스 제한으로 인해 적용하지 않았다.

    이를 위해, 나는 클라이언트에 거주 내 페이지에 iframe을 추가;의 서버를. 그래서 우리는 웹 서비스에 게시물을 다음은 iframe과 iframe이 우리의 데이터를 게시 할 때. 따라서 도메인 간 참조가 제거된다.

    우리와 iframe을에서 확인 권한이 부여 페이지 게시물 데이터에 2 웨이 원점 검사를 추가했습니다.

    희망이 도움이

    <iframe style="display:none;" id='receiver' name="receiver" src="https://iframe-address-at-client-server">
     </iframe>
    
    //send data to iframe
    var hiddenFrame = document.getElementById('receiver').contentWindow;
    hiddenFrame.postMessage(JSON.stringify(message), 'https://client-server-url');
    
    //The iframe receives the data using the code:
    window.onload = function () {
        var eventMethod = window.addEventListener ? "addEventListener" : "attachEvent";
        var eventer = window[eventMethod];
        var messageEvent = eventMethod == "attachEvent" ? "onmessage" : "message";
        eventer(messageEvent, function (e) {
            var origin = e.origin;
            //if origin not in pre-defined list, break and return
            var messageFromParent = JSON.parse(e.data);
            var json = messageFromParent.data;
    
            //send json to web service using AJAX   
            //return the response back to source
            e.source.postMessage(JSON.stringify(aJAXResponse), e.origin);
        }, false);
    }
    

  7. 7.나에게는 전혀 다른 이야기입니다. 이 페이지는 좋은 검색 엔진 순위를 가지고 있기 때문에, 나는 내 경우 너무 여기에 솔루션을 추가해야합니다.

    나에게는 전혀 다른 이야기입니다. 이 페이지는 좋은 검색 엔진 순위를 가지고 있기 때문에, 나는 내 경우 너무 여기에 솔루션을 추가해야합니다.

    나는 웹팩은 내가 사용하는 모듈을 따기로 자신을 JQuery와 내장. 아약스는 항상 유일한 단서로 "아니오 전송"라는 메시지와 함께 실패합니다.

    긴 디버깅 후, 문제는 XMLHttpRequest의 jQuery를에 플러그이며 기본적으로 포함되어 있지 것으로 밝혀졌습니다.

    명시 적으로 브라우저에서 작동하는 아약스를 만들기 위해 JQuery와 / SRC / 아약스 / XHR 파일을 포함하는 방법이 있습니다.


  8. 8.나는 단순히 요청 URL에서 도메인을 제거하여 그것을 해결.

    나는 단순히 요청 URL에서 도메인을 제거하여 그것을 해결.

    Before: https://some.domain.com/_vti_bin/service.svc
    
    After: /_vti_bin/service.svc
    
  9. from https://stackoverflow.com/questions/5241088/jquery-call-to-webservice-returns-no-transport-error by cc-by-sa and MIT license