Project
-
pm2-slack 이용해서 pm2 log 공유하기Project 2021. 5. 19. 11:12
온라인으로 진행하는 프로젝트이다보니, 로그를 꼭 온라인으로 공유해줘야한다는 생각이 들었다. 세상에 누군가 이미 pm2로그를 슬랙으로 공유할 수 있게 모듈을 만들어놨다니 세상은 넓고 천재는 많고 나는 그저 주워 쓰기만하면 됐다. pm2-slack 사용법도 엄청 간단하다.. 슬랙앱에서 웹훅 주소만 만들어서 공식문서에 나와있는대로 치면 끝.. pm2 install pm2-slack pm2 set pm2-slack:slack_url https://slack_url 완전 쉽죠..? 이걸 하고 얻은것은.. 서버 꺼졌어요? 라는 질문을 안받게됐다.
-
node-schedule, node-cron 이용하기Project 2021. 5. 19. 11:01
오쿠는 경매사이트다. 마감시간 이후 낙찰자를 지정해줘야하는데, 이 때 node-schedule 모듈을 이용했다. Note that Node Schedule is designed for in-process scheduling, i.e. scheduled jobs will only fire as long as your script is running, and the schedule will disappear when execution completes. If you need to schedule jobs that will persist even when your script isn't running, consider using actual cron. 공식문서에서도 볼 수 있듯이, node-schedule은 ..
-
작업일지 bcrypt를 이용한 로그인 구현Project 2021. 4. 19. 23:44
bcrypt를 이용한 로그인 구현 bcrypt를 이용해 유저 DB에 저장하면 아래와같이 저장된다. CODE // jwt 사용한 로그인 및 토큰 생성 exports.login = async (req, res, next) => { const { email, password } = req.body; if (typeof email !== "string") return res.status(400).send({ err: "이메일 형식이 틀렸습니다." }); if (typeof password !== "string") return res.status(400).send({ err: "비밀번호가 형식이 틀렸습니다." }); try { //유저정보 유무 확인 const user = await User.findOne({ e..
-
작업일지 평문 저장되는 비밀번호를 해싱해서 저장하기Project 2021. 4. 19. 10:57
평문 저장되는 비밀번호를 해싱해서 저장하기 개인적으로 npm문서를 읽으려 시도할 수 있을만큼 성장한 것 같아 기쁘다. 옛날엔 문서만 읽을 줄 알면 다 되는줄 알았는데 구글링하고 다른 예제도 보고 콘솔로그도 열심히 찍어야한다. exports.join = async (req, res, next) => { const { name, email, password, password2 } = req.body; //유저 정보 일치성 확인 및 유효성 확인하는 코드는 생략// const NewUser = new User({ ...req.body }); try { //bycrpt bcrypt.genSalt(saltRounds, function (err, salt) { bcrypt.hash(NewUser.password, s..
-
작업일지3Project 2021. 4. 16. 09:34
url로 보내달라고 한 말에 의미를 잘 모르겠어서 다른 프론트엔드분을 붙잡고 물어봤다(팀원에게는 이미 많이 물어봐도 모르겠어서) 그런데 프론트(리액트)에서는 파일의 경로로 넘겨주면 사용할 수 없다고 한다. 그래서 파일을 내려줄 때 웹상에서 클릭하면 이미지파일이 뜨는식으로 보내줘야한다고 한다. 그래서 처음에는 multer의 기능을 사용해 destination을 서버배포주소로 했더니 원하는 결과물을 가질 수 있었다. 그런데 백엔드 팀원이 모듈화하셨다고 해서 그냥 내거 지우고 모듈화 한 파일을 받았다. 근데 내 방식으로 하니까 갑자기 인증 에러가 뜸 아니 왜 인증에러가 뜨지.. 해서 팀원분이 수동으로 img path를 바꾸셨다. 그런데 또 작동 안됨 알고보니 라우터에 전부 다 validation을 하게끔 되어..
-
작업일지 1Project 2021. 4. 15. 10:39
팀프로젝트를 시작한지는 꽤 됐지만(4/12부터 시작) 미리미리 적어놓자. multer를 활용해 이미지 업로드 { "newPost": { "recommendCnt": 0, "recommendUser": [], "comment": [], "_id": "607792b94c5181449d442f46", "title": "사진업로드를해보자", "content": "test", "user": "DANA", "category": "music", "img": "uploads/fe35a6d1a9298fb621ff3373577fed9e", "createdAt": "2021-04-15T01:11:21.783Z", "updatedAt": "2021-04-15T01:11:21.783Z", "__v": 0 }, 글 작성 시 re..
-
[project] myBlog (with node.js)Project 2021. 4. 4. 23:25
http://15.164.104.186/ Dana's Blog | 2021 15.164.104.186 뭘 더 수정할까..? (4/4) 글 수정버튼이 로그인한 유저에게만 보였으면 좋겠다. 현재는 게시글에 비밀번호를 주고, 수정하기 할 때 비밀번호를 체크하는데, 요즘 누가 게시글 비밀번호를 일일이 기억하겠어.. 애초에 글쓴이만 삭제하고 수정할 수 있도록 하는것이 더 사용자 친화적인 면모인것..!! 글 쓴 시각을 예쁘게 바꿔보자 사용자인증 과정, 현재가 최선일까? 현재는 클라이언트쪽에 많은 의지를 하고있는데 이게 맞는지 모르겠다. 글쓰기 화면에서 댓글과 마찬가지로 글쓴이 = 로그인 한 유저가 되게끔 수정하자 애초에 꼭 글쓴이를 클라이언트에서 받아와야할까..? 또, 토큰 만료 시간을 지정하지않았다. 그리고 어째..
-
[항해99] 미니프로젝트 DotripProject 2021. 3. 8. 01:19
시연영상 첫 프로젝트 후기 부트캠프에 들어오기 전에는 보통 클론코딩 강의를 듣거나 하면서 다른사람의 코드를 따라 치면서 페이지를 만드는것을 종종했었다. 그런방식으로 하는 공부도 근근히 공부가 되었고, 내가 뭘 모르는지도 모르는 상태에서 살짝 벗어나게 해주었었다. 그렇지만 내가 뭘 할 수 있는지는 모르는 상태였다. 그런와중에 웹개발 종합반을 다 듣고, 직접 프로젝트를 진행하게되었다. 더보기 2021/02/28 - [blablabla] - [항해99] 웹개발 종합반을 마치고 [항해99] 웹개발 종합반을 마치고 danakim.shop/ Ricola shop 보고 있는 페이지의 내용 요약 danakim.shop 이 페이지는 이렇게 구성되어있다. 환율 api를 이용한 원/달러 환율 게시 MongoDB를 이용한 이..