728x90
인증번호 1분에 최대 5번만 호출하게끔 하는 로직을
Js에서 제어했다가, Count값을 Console에서 바꾸면
사용자 마음대로 제어가 되버리기때문에
로직을 바꿔달라고 했다.
“서버에서 세션에 값을 넣어서 제어해주세요”
아래 코드를 서버단에 인증번호 클릭할때 타는 로직
맨 앞에 넣어두었다.
int smsAuthCount = HcsSessionUtil.getSessionValue(request, “smsAuthCount”) == null ? 0 : HcsStringUtil.parseInt((String) HcsSessionUtil.getSessionValue(request, “smsAuthCount”));
long currentTime = System.currentTimeMillis();
long authBtnClickTime = HcsSessionUtil.getSessionValue(request, “authBtnClickTime”) == null ? currentTime : HcsStringUtil.parseLong((String) HcsSessionUtil.getSessionValue(request, “authBtnClickTime”));
long authBtnLimitTime = HcsSessionUtil.getSessionValue(request, “authBtnLimitTime”) == null ? authBtnClirkTime + 60 * 1000 : HcsStringUtil.parseLong((String) HcsSessionUtil.getSessionValue(request, “authBtnLimitTime”));
if(smsAuthCount > 4){
if(authBtnLimitTime < currentTIme){
smsAuthCount = 1;
authBtnClickTime = currentTime;
authVtnLimitTIme = authBtnClickTime + 60 * 1000;
HcsSessionUtil.setSessionValue(request, “smsAuthCount”, “”+smsAuthCount);
HcsSessionUtil.setSessionValue(request, “authBtnClickTime”, “”+ authBtnClickTime);
HcsSessionUtil.setSessionValue(request, “authBtnLimitTime”, “”+ authBtnLimitTime);
} else {
Status status = new Status();
status.setErrorCode(-3);
status.setErrorMsg(“1분에 5번까지만 요청 가능합니다.”);
retur responseFAIL(mav, status);
}
} else {
if(authBtnLimitTime < currentTime){
smsAuthCount = 1;
authBtnClickTime = currentTime;
authVtnLimitTIme = authBtnClickTime + 60 * 1000;
HcsSessionUtil.setSessionValue(request, “smsAuthCount”, “”+smsAuthCount);
HcsSessionUtil.setSessionValue(request, “authBtnClickTime”, “”+ authBtnClickTime);
HcsSessionUtil.setSessionValue(request, “authBtnLimitTime”, “”+ authBtnLimitTime);
} else {
smsAuthCount++;
HcsSessionUtil.setSessionValue(request, “smsAuthCount”, “”+smsAuthCount);
HcsSessionUtil.setSessionValue(request, “authBtnClickTime”, “”+ authBtnClickTime);
HcsSessionUtil.setSessionValue(request, “authBtnLimitTime”, “”+ authBtnLimitTime);
}
}
해결완료!!
'JAVA' 카테고리의 다른 글
[Java] @ResponseBody, @RestController, @Controller - 개발자 배찌 (0) | 2022.11.01 |
---|---|
[Java] 핸들러(Handler), 핸들러맵핑(Handler Mapping), 핸들러어댑터(Handler Adapter) - 개발자 배찌 (0) | 2022.10.25 |
[Java] 이미지 일괄다운로드 - 개발자 배찌 (0) | 2022.10.19 |
[java] getSession(), getSession(true), getSession(false) 차이점 - 개발자 배찌 (0) | 2022.07.10 |
jsp 페이지 넘기기 (forward, redirect 차이점) (0) | 2022.07.09 |