MYSQL

NodeBird 복습/node.js

react nodeBird 2-9 (쿼리 스트링과 lastId방식)

쿼리스트링과 lastId 방식 현재 스크롤을 내리면 같은 게시글을 계속 불러오는 버그가 있습니다. 여러 방법 중 lastId 방식으로 이 문제를 해결하는데, 먼저 mainPosts의 마지막(첫번째) 게시글의 id를 찾아서 이걸 lastId로 데이터를 전달해줍니다. 하지만, get방식은 데이터를 보낼 수 없기 때문에 넣으려면 쿼리스트링(`/주소?key=${value}`)를 이용해야 됩니다. 쿼리스트링의 값은 req.query에 담겨있으므로 req.query.lastId를 백엔드에서 값으로 사용합니다. 또한, 서비스가 처음 시작되는 경우, lastId의 값이 undefined가 되어버려서 에러가 발생할 수 있습니다. 초기로딩이 아닐시에는 if(parseInt(req.query.lastId, 10)) 구문을 ..

NodeBird 복습/node.js

react nodeBird 2-8 (multer, express static, 해시태그 완성하기)

이미지 업로드를 위한 multer encType="multipart/form-data" 이미지를 올리게되면 multipart 라는 form-data로 데이터가 전송이 되게 됩니다. 하지만, 지금의 백엔드에서는 json 형식과 이미지나 비디오 같은 데이터를 받을 수 없는 일반적인 Form 데이터만 받을 수 있기 때문에 multer를 설치합니다. multer는 app.js에서 미들웨어로 전체 라우터에 연결해줄 수 있지만 어떤 게시글은 text, 이미지만 올릴 수 있기때문에 라우터에 적용합니다. storage: 파일이 저장될 위치를 설정함 diskStorage: 파일을 디스크에 저장함 destination: 파일이 어떤 디렉토리(폴더)에 저장될 것인지 설정하는 메서드 filename: 폴더 내 저장될 파일의 ..

NodeBird 복습/node.js

react nodeBird 2-3 (회원가입, CORS 적용하기)

회원가입 프론트엔드, 백엔드 완성하기 이제 회원가입에 대한 백엔드 서버에 구성을 해줍니다. 시퀄라이즈의 create 메소드를 통해 req.body에 들어있는 email, nickname, password 데이터를 받아옵니다. 또한, 데이터가 어떤 흐름으로 전송되는지를 먼저 알아야됩니다. 회원가입 폼에서 email, nickname, password 객체 데이터를 가지고 submit을 하게 되면, saga의 signUp의 SIGN_UP_REQUEST가 실행되고, signUp의 action데이터(email, nickname, password의 데이터들이 객체로 들어있음) signUpAPI의 data로 백엔드 서버로 데이터가 전송됩니다. 프론트서버에서 전송받은 데이터를 req.body로 백엔드서버에서 받게됩니..

맑쇼
'MYSQL' 태그의 글 목록