2013-08-24 3 views
2

jsp 및 jquery ... 및 struts.i를 사용하고 있습니다. 아약스 request.I에 대한 리디렉션 로그인 페이지를 이해하는 데 문제가 있습니다. XHR 탭의 브라우저에서 요청을 보려고했는데 302 상태 코드를 헤더에 넣습니다. 어떻게 리다이렉트 할 수 있는지 이해할 수 없습니다. 내 접근 방식 1) 응용 프로그램에는 사용자가 로그인했는지 여부를 확인하고 로그인 URL로 리디렉션하는 기능이 있습니다. 2) 다른 작업을 수행하십시오.Java 및 jquery에서 ajax 호출을 리디렉션합니다.

로그인 후에 동일한 페이지로 돌아 오는 방법은 무엇입니까? ..... 또한 서버 측에서 리디렉션하기 위해 Response.redirect()를 사용하고 있습니다 ... 누군가가 응답을받는 방법을 설명 할 수 있습니까? 서버? ...

function buttonpress(param1,param2) 
{ 
$.ajax({ 
type:"GET", 
data:{ 
X:param1, 
Y:param2, 
}, 
url:"/application", 
success:function() 
{ 
alert("success message"); 
} 
error:function() 
{ 
alert("error message") 
} 

}); 
} 

답변

0

는 아약스 success() 콜백에 전달 된 data 매개 변수를 사용합니다. 302이 발급 된 경우 대상 URL은 data.redirect에 있습니다.

function buttonpress(param1,param2) 
{ 
    $.ajax({ 
    type: "GET", 
    data: { 
     X:param1, 
     Y:param2, 
    }, 
    url: "/application", 
    success: function(data, status) 
    { 
     if (data.redirect) { 
     window.location.href = data.redirect; 
     } else { 
     alert("success message"); 
     } 
    }, 
    error:function() 
    { 
     alert("error message") 
    } 
    }); 
} 
+0

을 시도하지만 검색어 매개 변수로 ... 말 예를 들어 X와 Y를 수있는 매개 변수를 전달하면 여전히 같은 error..but을 제공 할 수 있습니다 www.abc를. co.kr/application? X = 1 & Y = 2 ..... 페이지에 로그인하는 데 걸리는 시간입니다. – steve

0

당신은 내가 노력이

function buttonpress(param1,param2) 
{ 
    $.ajax({ 
    type: "GET", 
    data: { 
     X:param1, 
     Y:param2, 
    }, 
    url: "/application", 
    success: function(data) 
    { 
     var flag = data.trim(); 
     if (flag) { 
     // success code 
     } else { 
     window.location.href = '/logout.do'; 
     } 
    }   
    }); 
}