본문 바로가기

IT-백엔드

(51)
Node.js - Express 요번에 대회 나가고 제가 백엔드 부분이 부족하다는 것을 느끼고 하울의 코딩 채널 영상을 보고 공부한 것을 토대로 올릴 것입니다. package.json을 만들기 위해서 npm init을 콘솔창에 적어줍니다. 콘솔창에 적으면 이름또한 다른 부분들을 동의할 것이냐고 질문을한다. 동의를 할거면 enter 키를 누르면 된다. 만약 npm init -y 을 하면 npm init을한 다음 자동으로 엔터키를 계속 누른거랑 똑같다. Express.js란? Node.js를 위한 웹 프레임워크의 하나로, 웹 애플리케이션, API 개발에 이용된다. 결과: node server.js로 서버를 가동시켰는데 만약 이렇게 서버를 가동시키면 수정사항이 있을 때마다 콘솔창에 계속 저렇게 찍어줘야한다. 그래서 그렇게 고생하는 것을 방지..
Node.js - Router RestAPI 만들기 CRUD Create: Post Read: Get Update: Put Delete: Delete 일단 RestAPI 개발을 위하여 Postman을 설치해준다. Postman 화면 코드 router.js user.js Postman 결과 받아오는 메소드 GET으로 설정하였을 때: 받아오는 메소드 POST으로 설정하였을 때: 받아오는 메소드 PUT으로 설정하였을 때: 받아오는 메소드 DELETE으로 설정하였을 때:
Node.js - Passport Node.js Passport란? Passport는 여권이라는 이름과 같이 서버에서 사용자를 인증하기 위해 사용하는 Node.js용 미들웨어다. Passport는 다양한 인증 매커니즘(session, jwt등)을 각 모듈로 패키지화해 제공하고 있으며 편리하게 인증을 구현할 수 있다. 일단 passport를 설치해줘야하는데요. passport-http 다운로드 소스 코드 router.js auth.js Postman 화면 authorized에 Username과 Password를 제대로 적었을 경우 authroized Username고 Password를 제대로 안 적었을 경우 Create: Post = 회원가입 Read: Get = 로그인 Update: Put = 회원정보 수정 Delete: Delete =..
Node.js - Body Parser 요번 시간에는 Get 방식으로 간단하게 데이터를 보내는 것을 해볼 것이고 body parser에 대해서 배울 것이다. router.js Postman 화면 router.js Postman 화면 post를 해주기 위해서 코드 router.js에다가 post 방식을 추가해줬다. 그러고나서 Postman에다가 Post방식으로 이렇게 불러와주면 결과는 아래 사진처럼 데이터가 undefined로 뜨게 된다. 이유는 파싱을 못해서이다. 그래서 우리는 이제 body parser를 통해서 파싱을 해줄 것이다. 일단 body-parser란? Node.js에서 body의 요청을 파싱해주는 미들웨어입니다. 즉, 요청과 응답 사이에서 공통적인 기능을 수행하는 소프트웨어이다. POST에 들어오는 data를 JSON형식으로 바꿔..
Node.js - MongoDB 오늘은 회원가입에서 아이디 생성에 대해서 나갈 것이고 데이터베이스는 MongoDB로 할것이다. 우선 일단 mongodb를 설치해줄 것인데요. 전 이 강의 보고 따라서 다운 받았는데 여러분도 이거 보고 따라서 다운 받아보세요. https://www.youtube.com/watch?v=5spmnQX0IjM ​ 우선 디비를 연동시키기 위해서 mongoDB를 켜줘야하는데요. 위 사진처럼 저렇게하면 오류가 떠요. 왜냐하면 vs code에서 사용할 수 있게 환경 설정을 안해줬기 때문이에요. 여기 새로 만들기 들어가서 우리가 설치해준 mongodb 파일에서 bin 파일 location을 복붙해주면 된다. 저는 저렇게 설정하고 나서 vs code에 mongo라고 쳤을 때 오류가 났었는데요. 저처럼 여러분들도 오류 나면..
Node.js - Crypto 오늘 Node.js에서 여러가지 정보를 암호화를 시켜줄 수 있는 모듈을 써볼건데요. 일단 npm을 통해서 crypto를 설치해주시면 됩니다. 코드 controller/user.js에 코드 입력 crypto를 적용하기 전 crypto를 적용한 이후 코드 복호화까지 해줄 수 있는 코드 적용 Postman화면: 결과:
Node.js - JWT JWT란? Json Web Token의 약자로 Json 객체를 사용하여 가볍고 자가수용적인 방식으로 정보를 안전성 있게 전달해주기 위한 토큰이다. JWT 구조 1) Header: 사용할 해쉬 알고리즘 2) Payload: 담을 내용 3) Signature: 서명(ID + PASSWORD) 그리고 위 사진처럼 각 파트를 점으로 구분한다. 자 이제 개념을 대충 파악을 했으니 이제 코드를 시작해보쟈. 일단 저번 Crypto 시간에 ID 암호화 복호화하면서 디비에 많은 id password가 저장이 되어있을건데요. 그래서 지금 그걸 다 없애줄 것입니다. 1. 콘솔창에 mongo라고 쳐서 mongodb 서버를 켜준다. 2. show dbs; db를 justin으로 변경 4. show tables 5. db.use..
Node.js - Path app.get을 사용하여 주소가 localhost옆에 /home일 경우 화면에 성공이라고 뜨게 만들어줬다. server.js 결과: 요번엔 res.send 통해서 화면에 띄우는 방식 말고 res.sendFile을 통해서 html 파일 결과를 화면에 띄워줄 것이다. view/index.html server.js 결과: 요번에는 새로운 경로를 만들어 html 파일을 불러오는 대신 image 파일을 불러와서 화면에 결과를 띄워줄 것인데요. 일단 저는 images라는 폴더를 만들어 제가 맨유 팬인지라 거기에 manu.jpg라는 사진을 놨습니다. 그러면 결과가 이렇게 정상적으로 출력되는 것을 알 수 있습니다. 근데 위처럼 코드를 작성해줄 경우 폴더와 파일을 자유적으로 이동할 수가 없어서 저희는 path라는 모듈을..