기존 만들어놨던 것들을 객체화 (class) 하면서 require 들을 모두 import로 바꾸며 에러가 나고 있다 첫 에러는 app.js 첫번째줄부터 ... (node:15356) Warning: To load an ES module, set "type": "module" in the package.json or use the .mjs extension. (Use `node --trace-warnings ...` to show where the warning was created) C:\Users\hyem\Node_kiosk\app.js:1 import express from "express"; ^^^^^^ SyntaxError: Cannot use import statement outside a mo..
분류 전체보기
이번 프로젝트 진행하며 아쉬웠던 점은 에러 컨트롤을 더 편리하게 할 수 있는것을 후반에 알았던 것이다 node.js 에서 에러 컨트롤을 미들웨어로 할 수 있는 편리한 방법이 있다고 한다 ! 후에 더 공부해보면 좋을 것 같다 nodejs에서 - nest.js 가 나왔는데 nest.js 에는 그걸 할 수 있는 아주 편리한 기능이 내재되어있다고 한다 그걸 쓰려면 typescript 를 공부하면 될 것 같은데 다행히 캠프에 포함되어 있다 ! _____________________________ 처음에 설계했던 ERD를 중간에 한번 수정하면서 개발 일정이 많이 꼬였었다. 심지어 중간에 수정했던 ERD도 좋은 방법은 아니였다. 데이터 설계에 대해 더 공부해야할 것 같다 _________________________..
결제 기능에서 보유포인트보다 물건의 포인트가 작으면 결제가 되게끔 로직을 구현함에 있어서 트랜잭션의 필요성을 느끼게 되었다. 이런가능성 저런가능성을 생각하다보니 아 이래서 트랜잭션을 쓰는구나 싶었다. 우리는 결제와 잔여 포인트 감소를 원자적으로 처리해서 중간단계에서 실패하더라도 일관성있게 롤백하는 기능이 우선적으로 필요했다. 또한 여러 사용자가 동시에 잔여 포인트를 변경하려고 할때도 충돌을 방지하고 데이터의 정확성을 보장해야했다. 결론적으로 트랜잭션을 통해 변화가 모두 적용되거나 , 모두 적용되지 않게 되기 때문에 지속성도 보장이되고 정확히 빠진 금액이 보장되기 때문에 왜 모두가 트랜잭션을 결제기능에서 꼭 사용했는지 이해가 되었다. 그래서 트랜잭션을 사용하려 하는데 .. 기존에 한 파일내에서 다 끝내는 ..
지금까지 캠프 진행중에 부족했던 부분들을 채우는 시간을 가졌다 1. JWT 인증방식 , 토큰과 세션 , 이를 활용한 회원가입, 로그인 API 팀프로젝트의 에러를 해결하고 , 내가 맡은 부분을 완성하는 것만으로도 시간이 부족해서 복습시간이 부족했었다 이번 개인 프로젝트 시간을 짬내서 이전에 해내지 못했던 LV3를 완성시키고 부족했던 부분들을 공부했다 그렇게 완성시킨 것 ! const jwt = require("jsonwebtoken"); const { Users } = require("../models"); module.exports = async (req, res, next) => { const { Authorization } = req.cookies; const [tokenType, token] = (..
const findcomment = await Comments.findOne({ where: { commentId } }); // 객체 속 값 끄내는 법 findcomment.dataValues.UserId //로그 찍는 법 console.log(findcomment.dataValues); 중간중간 로그 찍어보며 값이 들어오나 안들어오나 확인을 하는데 promise 만 뜨고 그 안에 값들을 확인 할 수 없었다 이렇게 사용하는 방법이 있다는것을 알게 되니 해당 칼럼들을 끄내올 수도 있었다 !!! 최고 !!!!
KEEP 우리 팀의 열정이 정말 좋았다. 팀원모두가 12시를 넘어서까지 접속해있는건 우리 팀 뿐이였고 프로젝트 끝나기 3일전에는 밤까지 새는 열정을 보여줬던 우리팀 정말 자랑스럽다 ! 의견 충돌도 거의 없었고 있었더라도 모두가 소통해서 한명도 불만없이 진행했다는 점이 제일 좋았다 이렇게 좋은팀을 또 볼 수 있을지 싶을정도였다 PROBLEM 백엔드쪽에 대한 이해도는 좋았지만 프론트에 대해 이해도가 살짝 부족했어서 아쉬웠다 물론 우린 백엔드 팀이였지만 프로젝트에 프론트까지 포함되어 있다보니 도전하며 진행함에 있어서 시간이 부족했었다 TRY 이런방법 저런방법 다 도전해가며 하다보니 당연히 시간이 많이 들었고 오히려 이 부분에서 모든 팀원들이 밤을 새가며 하는 열정을 보일 수 있었던것 같다 모두가 머리모아 도전..

-ajax Asynchronous JavaScript And XML의 약자이며, 자바스크립트를 이용해 클라이언트와 서버 간에 데이터를 주고받는 비동기 HTTP 통신입 XMLHttpRequest(XHR) 객체를 이용해서 전체 페이지가 아닌 필요한 데이터만 불러올 수있다 -axios axios는 Node.js와 브라우저를 위한 Promise API를 활용하는 HTTP 통신 라이브러리 비동기로 HTTP 통신을 할 수 있으며 return을 promise 객체로 해주기 때문에 response 데이터를 다루기 쉽다 -fatch ES6부터 들어온 JavaScript 내장 라이브러리. Promise 기반으로 만들어졌기 때문에 axios와 마찬가지로 데이터 다루기가 쉽고, 내장 라이브러리라는 장점으로 상당히 편리 JSO..
팀명 : 구해조 프로젝트 명 : 메고사 목적 : '메뉴를 고민하는 사람들' -> 메뉴고민하는 사람들을 위해 레시피 공유, 맛집 추천 등 와이어프레임 : https://www.figma.com/file/rzTx2Bfi5TxU5NbMuogghE/%EB%A9%94%EA%B3%A0%EC%82%AC?type=design&node-id=0-1&mode=design&t=FGuPCNAixbbghTH1-0 체크리스트: 체크리스트 회원 회원가입 로그인 기능 구현 마이페이지 프로필 수정 기능 구현 비밀번호 DB 암호화 카카오톡 로그인 API 사용 DB MySQL 정규화 작업 Git 커밋 메시지 : [ver]+기능명 : 상세 설명에 변경 내용 서술 //ver2.0.0 배포 CRUD 게시글 쓰기/보기/수정/삭제 마이페이지 수정..