본문 바로가기
반응형

js17

[Express] Passport 모듈로 로그인 구현하기(2) - 카카오 로그인 구현하기 passport 모듈 sns등 서비스에 로그인을 구현할때, 회원가입과 로그인을 직접 구현할수도 있지만, 세션이랑 쿠키처리 등 복잡한 과정들이 있습니다. 이 모듈을 사용해서 더 간단하게 구현 할 수 있습니다. 아래에서 passport 모듈을 알고오시면 이해가 더 빠릅니다. 아래 프로젝트에서 이어서 하는 것입니다. passport 모듈을 연결하는 법은 아래에 있고, 이 포스트에선 passport-kakao 모듈과, 추가해줘야되는 코드만 다루고 있습니다. https://konkukcodekat.tistory.com/entry/Express-Passport-%EB%AA%A8%EB%93%88%EB%A1%9C-%EB%A1%9C%EA%B7%B8%EC%9D%B8-%EA%B5%AC%ED%98%84%ED%95%98%EA%.. 2022. 11. 11.
[Express] Passport 모듈로 로그인 구현하기(1) - local passport 모듈 sns등 서비스에 로그인을 구현할때, 회원가입과 로그인을 직접 구현할수도 있지만, 세션이랑 쿠키처리 등 복잡한 과정들이 있습니다. 이 모듈을 사용해서 더 간단하게 구현 할 수 있습니다. 패키지 설치 npm i passport passport-local bcrypt // 아래는 카카오 로그인 모듈 설치 (이번 실습때는 이용 X) npm i passport-kakao passport 모듈과 로컬(자체)로그인 모듈인 passport-local , 암호화 모듈인 bcrypt 모듈을 다운받았습니다. 데이터베이스에 비밀번호 그대로 저장하면 보안이 취약하기 때문에 사용자가 입력한 비번을 해시암호화해서 저장하고, 나중에 로그인할때, 입력한 비번을 똑같은 원리로 암호화해서 입력한 비번이랑 데이터베이.. 2022. 11. 11.
[Express] Sequelize로 MySQL 연결하기 (2) - CRUD 작업 Sequelize 라이브러리 시퀄라이즈는 ORM의 한 종류입니다. ORM은 객체와 데이터베이스의 릴레이션(명령어)를 매핑해주는 도구입니다. 쉽게 말해서 자바스크립트 객체를 ORM함수로 입력하면 ORM이 MySQL 명령어로 변역해서 실행해주는 것입니다. 꼭 mysql뿐만 아니라 다른 데이터베이스 언어와도 전부 호환 됩니다. npm으로 설치 sequelize-cli는 (comand line interface)로 시퀄라이즈 명령어를 터미널로 실행하기 위한 패키지이고, mysql2는 MySQL과 ORM을 연결해주는 드라이버입니다. mysql2이랑 MySQL이랑 헷갈리면 안됩니다. 별도로 설치해야합니다. npm i express sequelize sequelize-cli mysql2 Sequelize 초기화 아래.. 2022. 11. 8.
[Express] Sequelize로 MySQL 연결하기 (1) - 테이블 생성하기 Sequelize 라이브러리 시퀄라이즈는 ORM의 한 종류입니다. ORM은 객체와 데이터베이스의 릴레이션(명령어)를 매핑해주는 도구입니다. 쉽게 말해서 자바스크립트 객체를 ORM함수로 입력하면 ORM이 MySQL 명령어로 변역해서 실행해주는 것입니다. 꼭 mysql뿐만 아니라 다른 데이터베이스 언어와도 전부 호환 됩니다. npm으로 설치 sequelize-cli는 (comand line interface)로 시퀄라이즈 명령어를 터미널로 실행하기 위한 패키지이고, mysql2는 MySQL과 ORM을 연결해주는 드라이버입니다. mysql2이랑 MySQL이랑 헷갈리면 안됩니다. 별도로 설치해야합니다. npm i express sequelize sequelize-cli mysql2 Sequelize 초기화 아래.. 2022. 11. 6.
[Express] multer를 이용해서 백엔드 이미지 업로드 multer 미들웨어 multer는 이미지 동영상등 여러가지 파일들을 멀티파트 형식으로 업로드 할때 사용하는 미들웨어 입니다. 멀티파트 형식이란것은 enctype속성(인코딩)이 multipart/form-data인 형식을 말합니다. enctype의 속성에는 아래와 같은 종류가 있습니다. application/x-www-form-urlencoded 기본값으로, 모든 문자들은 서버로 보내기 전에 인코딩됨을 명시함. multipart/form-data 모든 문자를 인코딩하지 않음을 명시함. 이 방식은 요소가 파일이나 이미지를 서버로 전송할 때 주로 사용함. text/plain 공백 문자(space)는 "+" 기호로 변환하지만, 나머지 문자는 모두 인코딩되지 않음을 명시함. npm으로 설치하기 해당폴더의 터미널.. 2022. 11. 6.
[Express / jQuery] RSS 서비스 활용 (node.js로 xml 파싱하기) RSS 서비스 (Rich Site Summary) rss는 블로그나 뉴스 , 기상청처럼 컴텐츠 업데이트가 자주 일어나는 웹사이트에서 업데이트된 정보를 쉽게 사용자에게 전달하기 위해서 xml 기반의 데이터 배포 형식입니다. 이번 실습에서는 JTBC의 RSS를 이용하겠습니다. https://news.jtbc.joins.com/Etc/RssService.aspx 이중에서 골라서 rss를 이용하시면 됩니다. 스포츠 rss를 가지고 실습해 보겠습니다. http://fs.jtbc.joins.com/RSS/sports.xml 주의할것은 위에 스크린샷처럼 https 말고 http로 바꿔야합니다. 그 rss 주소로 가보면 xml파일을 어떤 태그를 중심으로 파싱해야하는지 알 수 있습니다. title , link의 정보를 .. 2022. 6. 14.
[jQuery] AJAX 통신으로 요청 보내고 JSON 파일 파싱하기 AJAX 웹 페이지 웹서버와 데이터를 교환하는 기술로 , 웹서버나 DB에 저장되어있는 데이터를 가져오거나 사용자가 입력한 데이터를 DB에 저장하는 역할을 합니다. 웹페이지가 서버한테 보는것을 req(요청) , 서버가 웹 페이지에 응답하는것을 res(응답)이라고 정의되는데, jQuery의 $.get() 함수를 이용해서 GET 요청을 메세지와 함께 보낼수 있습니다. 첫번째 인자에는 요청 메세지가 입력되고 , 두번째 인자로는 callback 함수를 정의합니다. callback 함수의 첫번째 인자로는 서버의 응답이 들어오고 이것을 출력할 수 있습니다 . $(document).ready(function () { // 버튼을 클릭하면 $("button").click(function () { //"testfile1... 2022. 6. 10.