문제

내가 구축중인 웹 사이트에서 로그인 할 때 (데이터베이스가 다른 서버에 있기 때문에) 사용합니다. JSON 패딩 사용자가 올바른 자격 증명인지 확인하십시오.

작동하고 있습니다 완벽하게 (IE7, IE8 & FF), 내가 시도 할 때까지 크롬, 사파리 및 오페라 완전한 재난 인 곳.

    $.ajax({
  type: "GET",
  dataType: "jsonp",
  url: "http://someurl.com",
  data: aRequestData,
  cache: false,
  error: function (XMLHttpRequest, textStatus, errorThrown) {
    // typically only one of textStatus or errorThrown
    // will have info
    alert("Error occured textStatus=" + textStatus + " errorThrown=" + errorThrown);
  },
  success: function(data) {
    alert('success');    
  }
});

평범하고 단순하고 브라우저 창에서 작동하지만 크롬, Safari & Opera에서는 작동하지 않았으므로 성공 경보에 결코 얻지 못했습니다.

이 문제를 해결하는 방법을 아는 사람이 있습니까?

감사.

도움이 되었습니까?

해결책 2

문제는 ajax 호출이 이루어진 "Thickbox"(JQuery Thickbox 플러그인)에 HTML 페이지 헤더에 남겨졌습니다!

Firefox 또는 IE는이 경우 반복적 인 헤더를 신경 쓰지 않지만 WebKit 엔진은 그렇습니다!

방금 여분의 헤더를 제거해야했고 모든 것이 트랙으로 돌아 왔습니다.

모두 감사합니다!

다른 팁

Safari 및 Chrome에 내장 된 개발자 도구를 사용하여 요청에서 HTTP Status Code 200으로 응답을 받는지 확인해 보셨습니까?

Chrome에서 '보기'메뉴에서 이러한 도구에 액세스 할 수 있으며 '리소스'탭을 선택하여 모든 요청을 확인하십시오. Safari를 사용할 때 일부 설정에서 이러한 도구를 활성화해야한다고 생각합니다.alt text

jQuery없이 버전을 만들기 위해 버전을 만들려고 시도 할 수 있습니다. 전화에서 200 상태를 얻지 못하면 jQuery가 오류 함수를 호출하지 않고 실패 할 것이라고 생각합니다. 오류 처리.

편집 된 버전의 다음 컨텐츠로 HTML 파일을 만들고 브라우저에로드하십시오.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
   <head>
      <title />
      <script type="text/javascript">
         function ws_results(obj) {
             alert(obj);
         }
      </script>
      <script type="text/javascript" src="http://someurl.com?foo=bar&amp;callback=ws_results" />
   </head>
   <body />
</html>
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top