inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

안녕하세요.

해결됨

따라하며 배우는 노드, 리액트 시리즈 - 기본 강의

추가적으로 궁금한점이 있어서 이렇게 남깁니다. 로그아웃 버튼을 클릭하면 mongoDB에 token이 "" 사라지게 구현해놓으셨는데, ie에서 application > cookies에서는 아직 token이 계속 있더라구요.. 상관이 없을까요?

  • nodejs
  • react
Byeong Mok Jang 댓글 2 좋아요 0 조회수 206

파일필터

해결됨

따라하며 배우는 노드, 리액트 시리즈 - 유튜브 사이트 만들기

파일필터 정상작동여부 판단을 위해서 mp4가 아닌 png를 올려보앗는데 업로드폴더에 들어갑니다 ㅠㅠ

  • react
  • nodejs
  • mongodb
  • redux
유용석 댓글 4 좋아요 0 조회수 363

postman에서 계속 로딩 뜨시는 분들

미해결

따라하며 배우는 노드, 리액트 시리즈 - 기본 강의

저도 postman에서 계속 로딩만 뜨길래 오타났나 계속 찾다가, 강사님 답변 보고 해결해서 여기에 글 남겨요. /User.js 파일 에서 userSchema.methods.comparePassword 구문 안 bcrypt.compare 안에 있는 if문 수정하시면 잘 됩니다. if(err) return cb(err); // 맨 끝에 ,(콤마)아니고 ;(세미콜론)으로 해주셔야 합니다! cb(null,isMatch);

  • react
  • nodejs
ycg02116 댓글 16 좋아요 38 조회수 1159

질문있습니다

미해결

React로 NodeBird SNS 만들기

1. 프론트에서 넥스트와 익스프레스를 연결했는데, 그러면 프론트에서도 익스프레스로 서버를 돌리고 백엔드에서도 익스프레스로 서버를 돌리면, 각각의 익스프레스로 프론트,백 서버를 돌리는것이 맞나요?? 2. 프론트에서 넥스트와 익스프레스를 연결한건 동적라우팅을 쓰려하는데, 넥스트에서 안되니 그저 익스프레스를 동적라우팅을 쓰기위한 수단으로 사용하는 건가요??

  • react
  • javascript
댓글 1 좋아요 0 조회수 173

script 과 autocomplete-python

미해결

프로그래밍, 데이터 과학을 위한 파이썬 입문

이 검색해도 패키지로 안나오는데요 어떻게 해야하나요

  • bigdata
  • python
댓글 1 좋아요 0 조회수 273

TypeError: Cannot read property 'prototype' of undefined

미해결

따라하며 배우는 노드, 리액트 시리즈 - 기본 강의

https://github.com/ryun3433/inf-todo.git 깃헙주소입니다. 이런 에러가 계속 납니다 ㅠ.ㅠ 뭐가 문제인지 잘 모르겠습니다.. 도와주시면 정말 감사하겠습니다 TypeError: Cannot read property 'prototype' of undefined (anonymous function) C:/Users/patmo/Documents/myProject/inf-todo/client/node_modules/express/lib/response.js:42 39 | * @ public var res = Object . create ( http . ServerResponse . prototype )

  • react
  • nodejs
릴롱궤 댓글 4 좋아요 3 조회수 4502

도와주세요...

미해결

따라하며 배우는 노드, 리액트 시리즈 - 기본 강의

계속 붙잡고 있어도 안되서 헬프를 칩니다.. 뭐가 문제인거죠..? auth.js 파일에서 findbytoken을 만드는데 계속 안되기만 합니다. TypeError: User.findByTokenis not a function at auth (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\middleware\auth.js:8:10) at Layer.handle [as handle_request] (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\layer.js:95:5) at next (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\route.js:137:13) at Route.dispatch (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\route.js:112:3) at Layer.handle [as handle_request] (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\layer.js:95:5) at C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\index.js:281:22 at Function.process_params (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\index.js:335:12) at next (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\index.js:275:10) at cookieParser (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\cookie-parser\index.js:71:5) at Layer.handle [as handle_request] (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\layer.js:95:5) at trim_prefix (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\index.js:317:13) at C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\index.js:284:7 at Function.process_params (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\index.js:335:12) at next (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\express\lib\router\index.js:275:10) at C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\body-parser\lib\read.js:130:5 at invokeCallback (C:\Users\AndrewLee\Desktop\node_basic\boilerPlate\node_modules\raw-body\index.js:224:16) ㄱ계속 이 문구만 뜨고요 함수가 아니라는데 저는 함수를 user.js에 만들었고.. 아 이게 무슨 문제일까요.. auth.js const { User } = require ( '../models/user' ); let auth = ( req , res , next ) => { // 이곳에서 인증처리를 하는 곳 // 클라이언트 쿠리에서 토큰을 가져온다 ==> 쿠키 파서를 이용한다. let token = req . cookies . x_auth ; console . log ( 'auth/token :' + token ); // 토큰을 복호화한 후 유저를 찾는다. User . findByToken ( token , ( err , user ) => { if ( err ) throw err ; if (! user ) { return res . json ({ isAuth : false , error : true }) // 유저가 없으니까 } else { // 유저가 있으면 req . token = token ; // 이렇게 설정해주는 이유는 콜러에서 req.token , req.user와 같이 사용할 수 있게 하기 위해서이다. req . user = user ; next (); } }); // 유저가 있으면 인증 오케이 // 유저가 없으면 인증 노노 } module . exports = { auth }; user.js const mongoose = require ( '../node_modules/mongoose' ); const bcrypt = require ( 'bcrypt' ); const saltRounds = 10 ; const myPlaintextPassword = 's0/ \/\P 4$$w0rD' ; const someOtherPlaintextPassword = 'not_bacon' ; var jwt = require ( 'jsonwebtoken' ); const userSchema = mongoose . Schema ({ name : { type : String , maxlength : 50 }, email : { type : String , trim : true , //스페이스를 없앤다 unique : 1 // 유일한 특성 }, password : { type : String , minlength : 5 }, lastname : { type : String , maxlength : 50 }, role : { // 롤을 주는 이유는 유저의 관리권한을 부여하기 위해서 type : Number , defalut : 0 }, image : String , token : { // 토큰을 이용해서 유효성등을 나중에 관리함 type : String }, tokenExp : { // 토큰의 유효기간 type : Number } }) userSchema . pre ( 'save' , function ( next ) { var user = this ; console . log ( '1' ); if ( user . isModified ( 'password' )) { console . log ( '2' ); bcrypt . genSalt ( saltRounds , function ( err , salt ) { console . log ( '3' ); if ( err ) return next ( err ); console . log ( '4' ); bcrypt . hash ( user . password , salt , function ( err , hash ) { console . log ( '5' ); if ( err ) return next ( err ); console . log ( '6' ); console . log ( hash ); user . password = hash ; next (); }); }); } else { next (); } }) userSchema . methods . comparePassword = function ( planPassword , cb ){ bcrypt . compare ( planPassword , this . password , function ( err , isMatch ){ if ( err ) return cb ( err ); cb ( null , isMatch ); } ); } userSchema . methods . generateToken = function ( cb ){ var user = this ; // json웹토큰을 이용해서 토큰을 생성하기 var token = jwt . sign ( user . _id . toHexString (), 'hihello' ); // 이렇게 토큰을 만들면 ,, // user._id + hihello = token이 되고, 나중에는 token과 hihello로 user._id를 만들 수 있다. user . token = token ; user . save ( function ( err , user ){ if ( err ) return cb ( err ); // 에러가 났으면 에러를 전달 cb ( null , user ); // 문제가 없으면 에러는 없고 유저를 전달 자 그럼 index.js로 넘어가서~ }); } userSchema . methods . B = function ( token , cb ){} userSchema . methods . findByToken = function ( token , cb ){ var user = this ; // 토큰을 디코드 한다. user_id + '' = token console . log ( "1 : " + token ); jwt . verify ( token , 'hihello' , function ( err , decoded ){ // 유저 아이디를 이용해서 유저를 찾은 다음에 // 클라이언트에서 가져온 token과 db에 보관된 토큰이 일치하는지 확인 user . findOne ({ "_id" : decoded , "token" : token }, function ( err , user ){ if ( err ){ return cb ( err ); } else { cb ( null , user ); } }) }) } const User = mongoose . model ( 'User' , userSchema ); console . log ( User . comparePassword ); module . exports = { User }; 좋은 강의 항상 감사드립니다.

  • nodejs
  • react
andrewlee 댓글 7 좋아요 2 조회수 889

머신러닝 속도 높이는 방법

해결됨

[개정판] 파이썬 머신러닝 완벽 가이드

안녕하세요? 저는 이제 막 머신러닝에 관심을 갖고 공부를 시작했습니다. 한 가지 궁금한 점은 저의 경우 100만개 정도 데이터로 머신러닝을 수행하는 경우도 있을 것으로 예상하는 데 머신러닝 속도를 높이는 방법이 궁금합니다. 배워도 속도 때문에 활용도가 낮아질까 염려되어 미리 질문 드립니다. 좋은 강의 감사합니다.

  • 통계
  • 머신러닝 배워볼래요?
  • python
Neo 댓글 2 좋아요 0 조회수 4542

렌더링시 두번씩 반복 됩니다.

미해결

누구든지 하는 리액트: 초심자를 위한 react 핵심 강좌

shouldComponentUpdate 기능 구현하기전부터 콘솔 로그확인시 두번씩 반복되는 것을 확인할수있는데, 적용후에도 동일하게 나타납니다. 어떤 문제인지 잘 파악이 되지않아 해당 화면 첨부드립니다. 확인부탁드리겠습니다. 감사합니다.

  • react
  • javascript
김미리 댓글 6 좋아요 2 조회수 1221

Nbexteionsions

미해결

공공데이터로 파이썬 데이터 분석 시작하기

Nbexteionsions 는 어떻게 jupyter 에 최초로 설치하나요?

  • python
  • numpy
  • pandas
Seil Oh 댓글 6 좋아요 5 조회수 489

모형에 대한 타당도

미해결

[개정판] 파이썬 머신러닝 완벽 가이드

선생님 안녕하세요! 강의 잘 듣고 있습니. 선생님께서 roc곡선 같은경우는 회귀보다는 0이냐 1이냐와 같이 분류를 하는 예측모형에서 모형의 타당도를 확인할때 많이 이용된다라고 하셨던 것 같습니다. 그렇다면 이전에 붓꽃을 분류하는 데이터와 같이 결과값이 3종류로 나눠지는 경우는 다른 값을 사용해야하나요? 1,0,2 와 같이 결과값을 구분하였을 때는 강의에서 나온 것 처럼 정밀도 재현율, roc 곡선 같은 것들을 그대로 사용해도 되는 건가요? .

  • python
  • 통계
  • 머신러닝 배워볼래요?
tmdqkr0930 댓글 1 좋아요 0 조회수 239

개발 도중 먼저 완성된걸 제 컴퓨터로 돌려보고 싶은데 그러기 위해 필요한 최소 세팅 궁금합니다.

미해결

인스타그램 클론 - full stack 웹 개발

1. 인스타그램 클론 작동시키기 1) backend 마지막 강의까지 완료된 코드 frontend: backend에서 static: 프론트앤드 파트 예제파일 업로드 다운로드 받았습니다. backend: 마지막까지 완성된 수정 코드 어디서 받을 수 있는지 알고 싶습니다. 2) backend 마지막 강의까지 완료된 코드로 배포해서 구현하기 제로베이스 기준에서 어떤어떤 강의를 듣고 환경을 설정해야 마지막 배포까지 할 수 있는지 알려주시면 직접 배포해서 환경에서 돌아가는 것 까지 스스로 해보고 싶습니다. 2. 제주도 카페 클론 작동시키기 기초 :: Django 에서 기초 전체 소스코드 다운 받았습니다. 마찬가지로 어떤어떤 강의를 보고 최소한의 세팅을 해야 배포까지 해서 작동하는지 알고 싶습니다. 30분 요약시리즈부터 맨앞부터 하는데 frontend가 끝나니까 벌써 조금 지쳐서 힘들어서 보고 싶어지네요.. 감사합니다~~

  • 클론코딩
  • django
  • HTML/CSS
  • python
댓글 1 좋아요 1 조회수 169

스타그래프트 관련 질문 드립니다.

해결됨

파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자

저는 탱크 공격력이 *= 2 연산이 안되고 35.0으로 출력이 됩니다. 왜 저는 연산이 안되고 실수로 출력이 될까요

  • python
chch4934 댓글 1 좋아요 0 조회수 204

pip install pymongo 오류 문의

미해결

남박사의 파이썬으로 실전 웹사이트 만들기

visual studio code 터미널에서 pip install pymongo 명령어 실행 시 캡쳐화면과 같이 오류가 나오면서 진행이 안됩니다. 해결방법이 있을까요?

  • python
공부하자 댓글 6 좋아요 1 조회수 4799

노드 리액트 기초 강의 #12 토큰 생성 with jsonwebtoken 강의 중 오류 ㅠㅠ

해결됨

따라하며 배우는 노드, 리액트 시리즈 - 유튜브 사이트 만들기

기초 강의 12번 부분에서 이러한 에러가 나는데 이유를 못찾겠습니다. ㅠㅠ 윗 부분은 제 소스코드입니다. 비밀번호를 틀리게 보내면 loginSuccess: false로 제대로 오는데 비밀번호를 올바르게하면 맨 윗 사진과같이 답변이 오네요 ㅠㅠ

  • mongodb
  • react
  • redux
  • nodejs
호진 댓글 3 좋아요 0 조회수 499

for 구문 질문입니다.

미해결

프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)

sum = 0 for v in range(1,101): sum += v # sum1 = sum1 + v print(sum) print() print('1 ~ 1000 Sum : ', sum(range(1, 1001))) 위경우에 마지막 print 문에서 에러가 발생합니다. sum 변수가 먼저 0 으로 선언됐기 때문에 마지막줄의 print 문속에 sum 함수에서 에러가 나던데요? 먼저 sum 이 변수 선언되면 되었기때문에 뒤에 sum(range(1,1001) 처럼 sum 함수를 사용할 수 없는 건가요?

  • python
Ki Hun Jeong 댓글 2 좋아요 0 조회수 299

맥에서 winsound 모듈을 찾을 수 없다는 에러가 뜹니다.

미해결

프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)

마지막 강좌를 실습하는 과정에서 import winsound 구문을 입력하고 실행하면 아래와 같은 메시지가 나옵니다. ModuleNotFoundError: No module named 'winsound' 맥에서는 어떻게 처리해야 되는지 궁금하며, 만약 향후에 이와 같은 사운드를 OS와 상관없이 재생하도록 하려면 어떤 모듈을 활용해야하는지도 궁금합니다.

  • python
Byungwook Son 댓글 1 좋아요 0 조회수 1664

섹션 3 스도쿠검사 문제 질문있습니다

미해결

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

문제를 다른 방법으로 풀면 풀리기는 하는데, 이 방법이 어떻게 잘못됐는지 잘 모르겠습니다. import sys sys.stdin = open ( "input.txt" , "rt" ) #sys.stdin = open("input.txt", "rt") arr_ = [ list ( map ( int , input ().split())) for _ in range ( 9 )] brr = [] flag = "YES" dx = [- 1 , 0 , 1 , 0 ] dy = [ 0 , 1 , 0 , - 1 ] ################ 행 , 열 검사하는 내용 ################## for i in range ( 9 ): brr.clear() for j in range ( 9 ): brr.append(arr_[i][j]) if len ( set (brr)) != 9 : flag = "NO" break ################################################# ################## 3x3 검사하는 내용 ##################### if flag == "NO" : print (flag) else : for i in range ( 0 , 7 , 3 ): brr.clear() for j in range ( 0 , 7 , 3 ): ########### 문제의 코드 ############ brr.append(arr_[i][j]) brr.append(arr_[i][j + k*dy[ 1 ]] for k in range ( 1 , 3 )) # 우측 brr.append(arr_[i + dx[ 2 ]][j]) # 다음줄 시작점 brr.append(arr_[i + dx[ 2 ]][j + k*dy[ 1 ]] for k in range ( 1 , 3 )) # 우측 brr.append(arr_[i + 2 *dx[ 2 ]][j]) # 다음줄 시작점 brr.append(arr_[i + 2 *dx[ 2 ]][j + k*dy[ 1 ]] for k in range ( 1 , 3 )) # 우측 ########### 문제의 코드 ############ if len ( set (brr)) != 9 : flag = "NO" print (flag) break if flag == "YES" : print (flag) 제가 생각했던건 arr_ 을 스도쿠 맵이라고 하고 각 행과 열, 3x3 리스트의 숫자들을 각각 brr이라는 리스트에 추가해서 마지막에 brr을 set으로 중복 없앤 뒤, 길이가 9가 아니라면 no라고 하였습니다. 그런데 ##문제의 코드## 에서 옳지 않은 값이 들어가는 것 같습니다. (이 부분은 3x3 리스트의 값을 체크하는 식입니다) 저는 처음에 3x3 안의 값들을 brr에 추가하기 위해서 brr.append를 하고 안에다 arr[i][j]의 원소 값들을 넣으려고 했습니다. 그런데 디버깅을 해보니까 원소의 값들에 접근할 때, dx와 k * dy + for 문에서 이상한 값이 들어가는 것 같습니다. 왜 이상한 값이 들어가는지 알 수 있을까요?

  • 코테 준비 같이 해요!
  • python
댓글 1 좋아요 0 조회수 278

인기 태그

인프런 TOP Writers

주간 인기글