[DAY73]

NA YE SOM·2023년 10월 20일
0


-> 실제 로그인하면 메인으로 뺐음



-> 메인으로 빠지지않고 카페로 빠짐
-> 메인이 아니고 로그인하기 전 페이지로 돌아가게 됨

->열어놓고 시작하기!!






-> 저장을 model로 했으니까






어제 로그인 서비스는 login위해서 이메일,비번 전달해서








header를 첫번째 파일

-> 요청이 시작되는걸 볼 수 있음

회원가입 : 개인정보 입력 + 약관의 동의

-> 합쳐져 있는곳 , 분리되어 있는곳(약관 먼저 -> 개인정보 물어봄)


->회원가입 전



-> controller에 작성해야하는 요청

a태그로 요청했으니 getMapping









-> 복사해서 본문위에 만들기

15장은 최신버전으로 하기!!( => 화살표 함수)


-> 익명함수를 화살표 함수로 바꾸면 이렇게 됨
-> es6버전 쓰는것이 좋음( 7도 나와있으니까 많이 쓰는것이 좋음)









-> 필수가 체크안되어있으면 못넘어감
(script를 짜야함) -> 필수를 안누르면 못넘어가는거라서








-> this도 event 객체 target 속성 모두 javascript 거라서



-> 체크안하고 다음 누르고

-> 체크 하고 누르면 404뜸


-> 체크를 했다면 value가 없어서 넘어가는 값은 없음
=> 넘어가는 글자는 없음( 자동으로 넘어가는 값 :




-> 백단에서 service가 on인지 체크할 필요성이 있나?










-> 둘다 해야함








-> join 페이지 만들기

js 폴더 만들기








-> script분할방법

join.jsp





-> 비밀번호는 정규식 검사만 하면 됨
-> 주소 api도 잠깐 복사붙여넣기 하기
-> 사용자가 입력한 이메일로 이메일을 보내줘서(인증코드 6개 랜덤으로 만들어서 보내주기)
=> 사용자가 정상적으로 입력했을때 가입이 가능하도록 처리하기!!


-> 바로 직전 약관동의 페이지에서 넘어온 event




-> 인증코드 받았으니 인증코드 입력하는것
(인증코드를 서버측으로 보낼 필요는 없음)
-> front에서 점검하려고 하는것(name은 필요없음, id만 있으면 됨)


-> 잘가지고 있는지 호강니하

-> 이벤트 체크 빼고 가면 off





-> text 로 하면 on,off 보임
-> hidden으로 바꿔놓기!

본인 구글 계정으로 이메일을 보내는것 가능함(받는사람은 상관없음:보내는 사람의 계정이 구글이어야함)

-> app비밀번호라는것을 만들어야함
-> google id가지고 동작하려면 대신 비밀번호 하나 만들고 끝나고 코드를 넣어서 돌리기!
-> app 비밀번호를 git에 올리면 안됨(문제!!)

Maven repository

비밀번호 암호화는 직접 만들어본 것

오늘 이메일로 보낼건 dependency써서 보내보기!!


-> 언어 만들어주는 애



spring-context supporter


-> 2번째


->5.3.3 이름 변수처리하기!


-> 변수 처리 ${org.springframework-version}



-> 가져다쓰기

->자동으로 변환시켜주는 라이브러리

-> inject대신에 쓰는것 : @Autowired씀

-> maven update하기!

-> MySecurityUtils 인증코드 반환하기!!




-> 문자사용여부, 숫자사용여부(인증코드 반환쪽을 만들어주기)


-> 정규식 패턴으로 걸거라서 이메일같은건 필요없음(이름, 주소 처럼 정규식 패 걸기 어려운것들: 사용자가 모든지 입력할 수 있는 상황이 됨)=> 여기다가 script입력할 수 있음

-> 회원가입할때 내 이름이다 라고 하는것 : DB까지 들어감
-> 불러와서 이름을 빼서 jsp에 뿌리는 순간

-> jsp에서 동작하는 scirpt코드가 됨(alert창에 그때 hello가 떠버림)
-> location.href 써서 다른데로 이동시키면 화면 안열리고 자꾸 이동해버림
=> 간단히 막기!!
->

> (< 로 바꿔버림) 
->태그로 인식 x :글자로 인식되서 막을 수 있음


-> html entity코드로 바꾸기

-> 한번에 하기!!

property 새로만들고 ignore처리하기!!



-> git에 올리기!!

-> 방금 내용이 바뀌었을텐테 status찍으면 아무것도 바뀐게 없다고 뜸(추적이 안되는 파일이라 무시하는것)
.ignore 처리가 잘되었는지? 확인하기

ignore순서 : 항상 먼저 올리고 -> ignore대상을 나중에 올릴것!!

app 비밀번호 여기에 저장을 해둬야할 것 같아서

email.properties : 깃에 안올라감(수업시간에만 만드는것)



-> 나중에는 암호화해서 올릴것

-> 구글에 보내는 protocool : simple mail protocool


-> email 계정 만들어야함


-> 읽어들일 프로파티 파일 적어주고

-> 해당 property파일 불러오는 방식 (appconfig방식 똑같이 쓰기)

-> spring임

->spring이랑 함께 동작하는 코드임

-> 누구에게 무슨 내용의 무슨 제목을 보내겠다 -> 받아와서 사용하기!!



->4개 해놓기(읽어들어야할것) : 지금 당장 필요한것


-> 실제로 api에게 메일을 전달하는 key이름은 다름




-> 이메일 보내는 호스트 정보임


-> 익명 inner type으로 만드는 방식
-> method생기면 ctrl + space해서

-> override할것 (return 뒷부분 지우고 ctrl + space)




-> spring.mail.password 해주기!!

-> 이메일을 보내기위한 준비과정 : 이제 만들어서 보내기만 하면 됨











-> 제목으로 파라미터 변경!!






앱 6자리 비번 복사해두고 password 복붙


공백 없이 다 붙이기
16자리 소문자 알파벳으로만 구성됨

-> 구글 로그아웃해도 상관없음



-> 정규식 검사 패스하면 중복 체크 패스하면 이메일 보내기!!!

-> 정규식 체크는 javascript
중복체크해야하니까 db갔다와야함 (ajax이라는 것 : 같이 이뤄져야하니까 페이지 바뀌면 안됨)
-> 끝나면 전송해야하니까 자바 코드 만들어서 service에 선언해듬

-> ajax이 2번 연속해서 진행되려면


->연속해서 ajax 특징 비동기처리 동작x(작업에 순서가 없음 -> 결과올때까지 기다렸다가 그다음에 ajax 돌아야하는데)
=>
---> 1번,2번으로 실제동작은 중복체크 결과를 모르고 이메일을 보냄!!

-> promise 자바스크립트객체가 이걸 해결하기 위해 있음

promise 객체 : 어떤 작업을수행할때 성공했다면 resolve호출 -> resolve함수는 then() 메소드의 화살표 함수 호출됨

-> then쪽으로 넘어가서 후속작업을 하는것





-> 연속된 ajax함수의 실행순서를 보장하는 자바 스크립트 객체 (promise를 쓰려면 작성해둔 Promise를 항상 가지고 다녀야함)




-> 복사해서 가져오기!!








-> 정규식만 돌려보기!!


-> 이메일이 아닌 양식 가짜로 써보기






-> 숫자 1 옆에 ES6에서 새로나온 문법임









-> Mapper는 기능이름쓰면 좋지않음




























-> then에있는 함수 불러줄것







aop 사용해서 parameter 찍기






-> 4번처럼 입력해도 되는이메일은 사용가능하다 나타남

중복체크의 ajax처리는 성공하였음


-> 다른 계정을 입력을 해서 이메일이 가는지 확인하기!!








-> 내용임




-> annotation 먼저쓰면 자동완성이 안됌



-> 한쪽은 네이버 로그인 계정 켜놓고


-> dependency 잘못넣음(2번째걸로 바꾸기)



-> maven update하기!

-------->> email 전송되는지 확인하기!!







-> 복붙하고 click event를 success에서 만들기



-> 이메일이 인증되었다 아니면 실패한것!


-> 이메일 중복 체크까지 끝나고 나면 사용할 수 없는 이메일이라고 돌아옴




-> 정규식 검사할때 : 정규식 검사하는 부분을 if안에 !빼고 넣기









-> 인증이 끝내고 회원가입 누르면

인증실패시












-> 둘다 slash의 index를 찾아주세요










-> replaceall


-> script파일로 분리할대 자바 변수를 가져다 쓸 수 없다
(script자체에서 해결을 할 수 있게 contextpath 함수를 구하기)





RequestCheckAop : 민감한 정보들어있을 수 있어서 개발 끝나고 지우기

MyLogbacklog

-> 개발 끝나면 지울것들
-> todop list 해놓고 지우기


(보충) - 주말
1. 깃에 올리는것 없고
2. 수정기능 없음
(이미지만 있음 : 기본 형태임) -> 주소 참고 안해도 됨
(수정빼고 4개 구현하면 됨)

목록 -> 삽입 -> 삭제 -> 상세보기 구현하기!

profile
개발자 velog

0개의 댓글