inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

Sequelize raw query store procedure 질문입니다.

해결됨

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지

안녕하세요 강의 잘 수강하고 있습니다! sequelize raw query로 db 에 미리 작성했던 store procedure 을 호출은 불가능한가요? 구글링, 공식문서에도 찾아봤는데 안나와서 이렇게 질문드립니다! 또한 추가로 raw query 사용을 const [ results , metadata ] = await sequelize . query ( " call myTest() " ) ; 위와 같이 작성하였더니 에러로 TypeError: Cannot read property 'query' of undefined 이런식의 에러가 발생하는데 따로 import를 { sequelize } 말고 해주어야 하나요?

  • nodejs
  • Sequelize
  • mysql
  • nodejs
  • sequelize
  • mysql
  • mongodb
임성규 댓글 1 좋아요 0 조회수 605

multer를 이용한 이미지 업로드 req.body.url 오류..

해결됨

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지

multer 수업을 수강한뒤 이미지 업로드를 위해 수업 실습처럼 이미지를 먼저 서버에 전송하여 압축한 뒤 이후에 저는 게시물이 아닌 동아리 정보 등록 폼으로 작성을 하려고 합니다. 실습과 같이 /img 라우터로 res.json을 이용해 url까지 전송하였습니다. 그 후 폼 제출 버튼을 클릭해서 콘솔로 req.body.url을 확인해보면 undefined 라고 나옵니다.. 저는 왜 req.body.url에 정보가 없는건가요??

  • multer
  • sequelize
  • mongodb
  • mysql
  • 이미지업로드
  • nodejs
  • Sequelize
임성규 댓글 1 좋아요 1 조회수 391

시퀄라이즈로 오라클연동은 안되나요?

미해결

[리뉴얼] React로 NodeBird SNS 만들기

안녕하세요 강의에서는 마이에스큐엘기반이라 저는 기존에사용하는 디비가 오라클이라라 그냥 오라클 oracledb써서 직접쿼리입력해서 하는 방식으로 했습니다다 시퀄라이즈는 오라클지원이안되나요? 또 기존에 이미 구현되어있는시스템을 노드로 전환하고있는데 이런경우에는 어떤게효율적일지 조언가능할까요??

  • sequelize
  • redux
  • express
  • nodejs
  • react
  • Next.js
하늘의개혁 댓글 1 좋아요 0 조회수 652

sequelize 질문입니다

미해결

Node.js에 TypeScript 적용하기(feat. NodeBird)

항상 좋은 수업 감사합니다!! js기반 sequelize products와 Memo 1:n관계 설정해주고 이런식으로 가져왔습니다. await models.Products.findOne({ where : { id : req.params.id }, include :[ 'Memo' ] }); 근데 여기수업 그리고 공식API 문서보니까 getProjects이런식으로 1:n관계 데이터 가져오는 거 같아서 getXXX 이게 1:n 관계 가져올 때의 쿼리가 맞는지 궁금합니다.

  • sequelize
  • typescript
  • 웹앱
  • nodejs
전공 선행입니다 댓글 1 좋아요 0 조회수 262

도커에서 sequelize 연결

미해결

Vue로 Nodebird SNS 만들기

goorm IDE 를 이용중인 수강생 입니다. IDE 에는 mysql 이 깔려있고 현재 접속이 잘 되는 상태입니다. ('mysql -u root -p' 로 정상적인 접속 가능) 하지만 백엔드를 실행시킬때마다 자꾸 오류가 사진과 같이 뜹니다.. app.js 는 강의와 똑같이 하였습니다. stack over flow 에선 저와같은 문제점이 있었는데 답변이 없어서 해결을 도저히 못하겠습니다..

  • mysql
  • mysql
  • sequelize
  • vuejs
  • aws
  • nodejs
  • vuex
  • ssr
yongsoocho 댓글 1 좋아요 0 조회수 384

시퀄라이즈 환경변수 설정

해결됨

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지

안녕하세요! 기존에 npx sequelize db:create를 하고, node_env를 따로 설정하지 않으면 development가 기본값으로 설정되고 npx sequelize db:create — env test하면 config.json의 test 디비로 설정이 된다고 이해했는데 (--env 옵션이 데이터베이스를 선택할 수 있는 옵션이 맞나요??) 환경변수를 --env를 사용해 test로 바꾸면 다시 development를 사용하고 싶을땐 어떻게 바꿔주어야하나요? (이미 db:create를 했다면 npx sequelize — env test 만 써도 되는 것인가요??)

  • env
  • nodejs
  • sequelize
  • testdb
  • mysql
  • mongodb
  • Sequelize
lch9502 댓글 3 좋아요 0 조회수 543

카카오 로그인하기 도중 에러 질문입니다.

미해결

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지

E:\프로그래밍\Nodejs_Master_Project\9.Express로SNS서비스만들기\node_modules\passport-oauth2\lib\strategy.js:83 if (!options.clientID) { throw new TypeError('OAuth2Strategy requires a clientID option'); } ^ TypeError: OAuth2Strategy requires a clientID option at Strategy.OAuth2Strategy (E:\프로그래밍\Nodejs_Master_Project\9.Express로SNS서비스만들기\node_modules\passport-oauth2\lib\strategy.js:83:34) at new Strategy (E:\프로그래밍\Nodejs_Master_Project\9.Express로SNS서비스만들기\node_modules\passport-kakao\dist\Strategy.js:33:31) at module.exports (E:\프로그래밍\Nodejs_Master_Project\9.Express로SNS서비스만들기\passport\kakaoStrategy.js:7:18) at module.exports (E:\프로그래밍\Nodejs_Master_Project\9.Express로SNS서비스만들기\passport\index.js:27:5) at Object.<anonymous> (E:\프로그래밍\Nodejs_Master_Project\9.Express로SNS서비스만들기\app.js:38:1) at Module._compile (internal/modules/cjs/loader.js:1063:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10) at Module.load (internal/modules/cjs/loader.js:928:32) at Function.Module._load (internal/modules/cjs/loader.js:769:14) at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12) [nodemon] app crashed - waiting for file changes before starting... npm start로 실행하면 다음과 같이 passport-oauth2에서 오류가 난다고 하는데, 강의에서는 이번에는 accessToken, refreshToken 와 같은 oauth2에 관련된 것은 사용하지 않는다고 들었습니다. 해당 오류는 어떻게 해결해야 하나요?

  • mysql
  • mongodb
  • nodejs
  • Sequelize
당근이 댓글 4 좋아요 0 조회수 3011

mysql 과 gcp sql 연결

미해결

Vue로 Nodebird SNS 만들기

강의와 관련있는 질문 을 남겨주세요. &bull; 강의와 관련이 없는 질문은 지식공유자가 답변하지 않을 수 있습니다. (사적 상담, 컨설팅, 과제 풀이 등) &bull; 질문을 남기기 전, 비슷한 내용을 질문한 수강생이 있는지 먼저 검색 을 해주세요. (중복 질문을 자제해주세요.) &bull; 서비스 운영 관련 질문은 인프런 우측 하단 &lsquo;문의하기&rsquo; 를 이용해주세요. (영상 재생 문제, 사이트 버그, 강의 환불 등) 질문 전달 에도 요령이 필요합니다. &bull; 지식공유자가 질문을 좀 더 쉽게 확인할 수 있게 도와주세요. &bull; 강의실 페이지 (/lecture) 에서 '질문하기'를 이용해주시면 질문과 연관된 수업 영상 제목이 함께 등록됩니다. &bull; 강의 대시보드에서 질문을 남길 경우, 관련 섹션 및 수업 제목을 기재 해주세요. &bull; 수업 특정 구간에 대한 질문은 꼭 영상 타임코드 를 남겨주세요! 구체적인 질문 일수록 명확한 답을 받을 수 있어요. &bull; 질문 제목은 핵심 키워드를 포함해 간결하게 적어주세요. &bull; 질문 내용은 자세하게 적어주시되, 지식공유자가 답변할 수 있도록 구체적으로 남겨주세요 . &bull; 정확한 질문 내용과 함께 코드 를 적어주시거나, 캡쳐 이미지 를 첨부하면 더욱 좋습니다. 기본적인 예의 를 지켜주세요. &bull; 정중한 의견 및 문의 제시, 감사 인사 등의 커뮤니케이션은 더 나은 강의를 위한 기틀이 됩니다. &bull; 질문이 있을 때에는 강의를 만든 지식공유자에 대한 기본적인 예의를 꼭 지켜주세요. &bull; 반말, 욕설, 과격한 표현 등 지식공유자를 불쾌하게 할 수 있는 내용 은 스팸 처리 등 제재를 가할 수 있습니다. 군대에서 수업을 듣기 때문에 온라인IDE 를 이용 중인 수강생입니다. 따라서 mysql 을 localhost 에 연결하는 것이 문제가 있는데요.. GCP sql 중 mysql 에 값싼 인스턴스를 만들고 연결을 하려고 합니다 제 생각에는 config.json 에 username:root / password:인스턴스 비밀번호 / database:데이터베이스이름 / host:공개 IP / dialect:mysql 을 하면 연결될 것이라고 생각 하였는데 뜻대로 되지를 않네요.. 어떻게 하면 좋을까요 ㅠㅠ

  • mysql
  • mysql
  • sequelize
  • aws
  • nodejs
  • vuex
  • vuejs
  • ssr
yongsoocho 댓글 1 좋아요 0 조회수 305

req.session.color를 찾을수없다고 나오네요

해결됨

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지

12장 웹소켓 채팅을 구현중인데 req.session.color를 못찾는다고 나옵니다. node 버전은 v14.15.4이구요 TypeError: cannot read property 'color' of undefined 가 나옵니다. 강의처럼 {} 처리도 해보았는데 도 안되네요 문제가 되는 소스 첨부리며 ` ${ req . session . color } 님이 입장하셨습니다.` 위에 부분에서 오류가 발생합니다. const SocketIO = require('socket.io'); const axios = require('axios'); const cookieParser = require('cookie-parser'); const cookie = require('cookie-signature'); module.exports = (server, app, sessionMiddleware) => { const io = SocketIO(server, { path: '/socket.io' }); app.set('io', io); const room = io.of('/room'); const chat = io.of('/chat'); io.use((socket, next) => { cookieParser(process.env.COOKIE_SECRET)(socket.request, socket.request.res || {}, next); sessionMiddleware(socket.request, socket.request.res || {}, next); }); room.on('connection', (socket) => { console.log('room 네임스페이스에 접속'); socket.on('disconnect', () => { console.log('room 네임스페이스 접속 해제'); }); }); chat.on('connection', (socket) => { console.log('chat 네임스페이스 접속'); const req = socket.request; const { headers : { referer } } = req; const roomId = referer .split('/')[referer.split('/').length-1] .replace(/\?.+/, ''); socket.join(roomId); socket.to(roomId).emit('join', { user: 'system', chat: `${req.session.color}님이 입장하셨습니다.`, }); socket.on('disconnect', () => { console.log('chat 네임스페이스 접속 해제'); socket.leave(roomId); const currentRoom = socket.adapter.rooms[roomId]; const userCount = currentRoom ? currentRoom.length : 0; if (userCount === 0) { // 접속자 수가 0명이면 방 삭제 const signedCookie = req.signedCookies['connect.sid']; const connectSID = cookies.sign(signedCookie, process.env.COOKIE_SECRET); axios.delete(`http://localhost:8005/room/${roomId}`, { headers: { Cookie: `connect.sid=s%3A${connectSID}`, }, }) .then(() => { console.log('방 제거 요청 성공'); }) .catch((error) => { console.error(error); }); } else { socket.to(roomId).emit('exit', { user: 'system', chat: `${req.session.color}님이 퇴장하셨습니다.`, }); } }); }); };

  • Sequelize
  • nodejs
  • mysql
  • mongodb
이태희 댓글 2 좋아요 0 조회수 287

Cannot read property 'split' of undefined 에러가 나옵니다...

미해결

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지

코드 작성 후 정상적으로 실행이 되었는데 갑자기 재실행을 하면 8005 번 포트에서 대기 중 몽고디비 연결 성공 chat 네임스페이스에 접속 C:\Users\juren\OneDrive\바탕 화면\Node\chapter12\gif-chat\socket.js:29 .split('/')[referer.split('/').length - 1] ^ TypeError: Cannot read property 'split' of undefined at Namespace.<anonymous> (C:\Users\juren\OneDrive\바탕 화면\Node\chapter12\gif-chat\socket.js:29:8) at Namespace.emit (events.js:315:20) at Namespace.emit (C:\Users\juren\OneDrive\바탕 화면\Node\chapter12\gif-chat\node_modules\socket.io\lib\namespace.js:213:10) at C:\Users\juren\OneDrive\바탕 화면\Node\chapter12\gif-chat\node_modules\socket.io\lib\namespace.js:181:14 at processTicksAndRejections (internal/process/task_queues.js:75:11) [nodemon] app crashed - waiting for file changes before starting... 이런 에러가 나오면서 실행이 되지않습니다.. 그리고 저 에러가 나고 나서?? 채팅방에 사용자가 0명일때 채팅방이 삭제되는 부분도 삭제는 정상적으로 되는데 새로고침을 해줘야만 삭제된상태로 나옵니다.. 왜 그런걸까요 제로초님..

  • mysql
  • mongodb
  • nodejs
  • Sequelize
댓글 2 좋아요 0 조회수 4165

passport-naver

해결됨

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지

passport-naver을 이용해보려 하는데 porfile.displayName 값이 계속 undefind여서 nick값에 들어가지가 않습니다... naver 앱등록할때 권한도 다 설정 해줬는데 왜 정보를 받아오지 못할까요 제로초님 ㅠㅠ const passport = require ( ' passport ' ) ; const NaverStrategy = require ( ' passport-naver ' ) . Strategy ; const User = require ( ' ../models/user ' ) ; module . exports = () => { passport . use ( new NaverStrategy ( { clientID : process . env . NAVER_ID , // 네이버에서 발급받을 ID clientSecret : process . env . NAVER_SECRET , callbackURL : ' /auth/naver/callback ' , // 네이버로부터 인증결과를 받을 라우터 주소 }, async ( accessToken , refreshRoken , response , done ) => { // 네[이버에서 인증 후 Token 과 profile을 보내준다. console . log ( ' naver profile ' , response) ; try { const exUser = await User . findOne ( { // 기존의 User가 있는지 조회 where : { snsId : response . id , provider : ' naver ' }, } ) ; if (exUser) { // 기존 User의 정보가 있다면 User정보를 done과 호출하고 전략을 종료 done ( null , exUser) ; } else { // 기존의 User정보가 없다면 회원가입을 진행 const newUser = await User . create ( { email : response . emails[ 0 ] . value , nick : response . id , snsId : response . id , provider : ' naver ' , naver : response . _json } ) ; done ( null , newUser) ; // 사용자 생성 후 done함수 호출 } } catch (error) { console . log (error) ; done (error) ; } } )) ; }; 이렇게 작성했습니다 naver profile { provider: 'naver', id: '60727489', displayName: undefined, emails: [ { value: 'juren528@gmail.com' } ], _json: { email: 'juren528@gmail.com', nickname: undefined, profile_image: undefined, age: undefined, birthday: undefined, id: '60727489' } } 가져온 결과 콘솔로 확인해보니 이렇게 나오구요 좀더 공부해보려다 안되서 막막합니다 ㅠㅠ 혹시 이유를 아실까요 ㅠㅠ

  • nodejs
  • mysql
  • mongodb
  • Sequelize
댓글 3 좋아요 0 조회수 836

deserializeUser findAll()실행시 로그인 성공 후 화면이 그대로입니다.

해결됨

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지

로그인을 하면 세션까지는 올바르게 잘 넣어집니다. 그런데 deserializeUser를 실행할때 findOne을 findAll로 실행하면 req.user까지만 되고 나머지 user.id user.nick 등이 받아와지지 않습니다. findAll 과 findOne에 id를 조건으로 입력하면 같은 결과가 나온다고 생각했는데 왜 안되는지 혹시 알려주실수 있나요 ㅠㅠ

  • nodejs
  • mysql
  • mongodb
  • Sequelize
댓글 2 좋아요 0 조회수 254

Node.js 교과서

미해결

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지

안녕하세요 제로초님 Node.js 교과서를 사서 열심히 수업을 듣고 있는 한 학생입니다! 다름이 아니고 유튜브를보며 노드교과서 개정판 4-5. 쿠키 이해하기에서 코드 질문이 있어서 여쭤보러 왔습니다. 이것은 되는 코드이고 const parseCookies = ( cookie = '' ) => cookie . split ( ';' ) . map ( v => v . split ( '=' )) . reduce (( acc , [ k , v ]) => { acc [ k . trim ()] = decodeURIComponent ( v ) return acc ; }, {}); 이것은 안되는 코드입니다. const parseCookies = ( cookie = '' ) => { cookie . split ( ';' ) . map ( v => v . split ( '=' )) . reduce (( acc , [ k , v ]) => { acc [ k . trim ()] = decodeURIComponent ( v ) return acc ; }, {}); }; 둘의 차이점은 함수를 {} 로 감싸냐 안감싸냐의 차이인데 화살표함수에서 중괄호는 선택사항이라고 배웠습니다. 만약 아래 코드를 사용하게 되면 (node:9452) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'name' of undefined at Server.<anonymous> (C:\Users\ksy\Desktop\Node.js\ch04\ex03\cookie2.js:30:22) at Server.emit (events.js:315:20) at parserOnIncoming (_http_server.js:874:12) at HTTPParser.parserOnHeadersComplete (_http_common.js:126:17) (Use `node --trace-warnings ...` to show where the warning was created) (node:9452) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1) (node:9452) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code. 라는 에러가 뜹니다. 함수를 제대로 사용하지 못해서 그런거 같은데 왜 중괄호를 붙이면 함수가 실행이 안되는건지 궁금합니다

  • mongodb
  • nodejs
  • mysql
  • Sequelize
댓글 4 좋아요 0 조회수 420

인기 태그

인프런 TOP Writers

주간 인기글