JS) 로그인시 페이지 이동
프로젝트 중 로그인을 하면 시도한 페이지를 유지하고 싶은 생각이 들게 되어 시도했다.
처음에는 Spring에서 아무 페이지든 jsp를 호출할 때 Model(request 저장공간)에 url의 정보를 담아서 포워딩 해준다음 input hidden으로 넘겨주는게 가능하지 않을 까라는 생각에 시도 후 정상 작동되어 기뻤지만,
욕심이 나서 그런지 각각 request controller에 해당 url 값을 담아서 넘겨줘야 한다는 것 때문에 효율성이 상당히 떨어져 보였다. 그래서 고민된 것이 '아니 브라우저가 url 정보를 가지고 있지 않을까' 이다.
검색을 몇차례 해본 후 url 정보를 가지고 있는 window 를 발견하게 되고 시도 했다.
<script>
const url = window.location.href;
const inputUrl = document.querySelector("#inputUrl");
inputUrl.value = url.substring(url.indexOf(/bseven/)+8);
</script>
가져올 때 http부터 가져오기 때문에 불필요한 정보는 잘라내기 위해 substring해서 가져온 뒤
로그인을 하는 nav바의 input hidden에 넣어주었다.
<form action="/bseven/member/loginProcess" method="post" class="d-flex">
<input name="member_id" class="form-control me-2" type="text" placeholder="ID" aria-label="Search">
<input name="member_pw" class="form-control me-2" type="password" placeholder="PW" aria-label="Search">
<input id="inputUrl" type="hidden" value="" name="page">
<input class="btn btn-outline-success" type="submit" value="login">
<a href="/bseven/member/registerPage" class="btn btn-outline-success ms-1">Join</a>
</form>
nav바는 include 해서 사용하기 때문에 공유해서 쓰면 매번 jsp를 호출하는 request controller에 url정보를 담아 포워딩하는 것이 필요없고, html문과 js로 해결할 수 있다.
Author And Source
이 문제에 관하여(JS) 로그인시 페이지 이동), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@kchm0224/JS-로그인시-페이지-이동저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)