2013-05-31 4 views
0

CORS를 사용할 수없는 다른 서버의 웹 서비스로 데이터를 보내고 싶습니다. JSONP를 사용하여이를 수행해야한다. 이 서비스는 인증을 필요로하며 사용자가 SSO 환경에있는 대부분의 시간 동안 SSO 메커니즘이 문제없이 쉽게 서비스에 전달됩니다.유효한 JSONP 반품을 감지 할 수 있습니까?

이 SSO 환경 내에서, 사용자가 (301) 파일이 <!Doctype...

로 시작하는 것이기 때문에 당연히 무효 자바 스크립트를 반환하는 로그인 페이지로 리디렉션되지 반환 된 데이터 있는지 확인하는 방법이 있나요 작동 가능합니까? 사용자가 서비스에 성공적으로 액세스 할 수있을 때마다 처음 15자를 정확히 알아야합니다. 반환을 확인하고 다음과 같은 작업을 수행하고 싶습니다.

if(dataIsValid){ //continue normally, build page with returned data } 

else{ //redirect to non-SSO login page } 

또는 이와 비슷한 워크 플로우와 유사한 것.

+1

jquery 아약스 호출의 오류 처리기가 처리해야한다고 생각합니다. – Nelson

+1

리디렉션을 오류 기능 – Jose

+0

에 전달할 수 있습니다. 빠른 속도입니다! 나는'success','error' 및'jsonpCallback' 매개 변수의 조합을 시도했지만 실패하지 않은 것은 실패 처리기에'error'를 사용하고 성공 처리기로'jsonpCallback'을 사용하는 것입니다. 내 시나리오에서는 오류가 발생하는 모든 작업을 정확하게 파악해야합니다. 여기서 유일한 성공은 유효한 jsonp 응답입니다. 감사! – Greg

답변

0

관련 태그를 추가했기 때문에 jQuery를 사용한다고 가정합니다.

var dataIsValid = true; 
var data = {}; 
try { 
    data= $.parseJSON(data); 
} catch (exc){ 
    dataIsValid = false; 
} 
//... 
관련 문제