솔솔

[Java] 로그인 후 특정 페이지 이동 본문

나의보물들/Java

[Java] 로그인 후 특정 페이지 이동

솔솔하네 2022. 9. 27. 16:57
반응형

로그인 할 때

1.로그인페이지 클릭 → 로그인 → 메인페이지

2. 회원만 들어갈 수 있는 페이지 클릭 →  '회원만접속가능합니다 로그인 해주세요' 알림창 후 → 로그인 → 처음클릭한 페이지

이렇게 로그인 후 특정페이지로 이동하는것을 볼 수 있는데 이걸 한 번 해보겠습니다!

 

 

💡스타트!


1. 저는 실시간예약이라는 메뉴를 회원만 이용할 수 있도록 하겠습니다.

1-1. 실시간 예약 페이지 클릭
1-2. 로그인 후 이용가능 안내창 나옴, 확인 클릭 후
1-3. 로그인페이지로 이동하게 되는데 나중에 이동할 url이 파라미터로 전달됨

// html
<a style="cursor: pointer;" onclick="realTimeRsv();">실시간예약</a>

 

// js
function realTimeRsv() {
	
	$.ajax({
		url: url,
		type : type,
		datatype : 'json',
		data : data,
		success : function(data) {
				if(로그인 확인 후 로그인 세션有) {
                	location.href="{이동할 페이지}";
                }else{
 					alert("로그인 후 이용 가능합니다.");
                    // 로그인 실패시 로그인페이지로 이동하면서 url에 나중이 이동할 페이지url을 파라미터로 적어준다
					location.href="login?url={이동할 페이지}";                
                }
			}
	});
	
}

 

2. 로그인 기능에 url의 파라미터를 가지고 오는 코드를 작성합니다.

  (저 같은 경우는 1-3의 사진에 있는 'calendar'를 파라미터로 들고오겠쥬)

// js
const urlParams = new URL(location.href).searchParams;
const url = urlParams.get('url');

값을 ajax의 데이터로 보냄.

 

3. Java 서비스로직에서 로그인 기능에 로그인이 성공 하면 받아온 'url'값에 따라서 값을 리턴해줍니다.

// java
public String login(url){

	if(로그인 성공){
    
    	String url2 = !StringUtils.isEmpty(url)? url : "/";
    }
    return url2;
}

 

4. 리턴받은 값을 페이지 이동값으로 쓰면 끄읏.

// js
$.ajax({
		~~~~~,
		~~~~~,
		~~~~~,
		success : function(data) {
				location.href = data;
			},
})

로그인 후 페이지 이동 성공