묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
전체 코드는 어떻게 들어가야 볼 수 있나요??
파일을 못 찾겠습니다 ㅠㅠㅠㅠ
-
미해결Slack 클론 코딩[백엔드 with NestJS + TypeORM]
LocalAuthGuard 를 사용하고 있는데요, 권한 에러가 뜹니다....
저는 지금 백엔드만 만들어서 실습하고 있는데요, 포스트맨으로 로그인을 시도해 보고 있습니다. 근데, 계속해서 권한 에러 401이 뜨고 있습니다. 제가 볼때는 LocalAuthGuard에서 canActivate 를 통과하지 못하는 것 같습니다. context를 로그 찍어봐도 [Object] 라고만 뜹니다. 리퀘스트가 제대로 못넘어가 고 있는 것 같은데 어떻게 해결할 수 있을까요?
-
미해결작정하고 장고! Django로 Pinterest 따라만들기 : 바닥부터 배포까지
db 관련 문의입니다~
안녕하세요~ db 관련 질문이 있어 글 남깁니다! class Article(models.Model): writer = models.ForeignKey(User, on_delete=models.SET_NULL, related_name='article', null=True) title = models.CharField(max_length=200, null=True) content = models.TextField(null=True) image = models.ImageField(upload_to='article/', null=True) created_at = models.DateField(auto_now_add=True, null=True) 위와 같이 models.py를 정의를 해줬구요, 그리고 makemigrations, migrate 명령어를 통해 적용 했습니다. 적용 후에 보니까 from django.conf import settings from django.db import migrations, models import django.db.models.deletion class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Article', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('writer', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='article', to=settings.AUTH_USER_MODEL)), ], ), ] 이렇게 파일이 생성되었더라구요, 근데 article 을 create 해보니까 title 컬럼이 없다는 에러가 나왔구요, 그래서 다시 makemigrations, migrate 명령어를 통해 적용 했습니다. 그래서 아래와 같은 파일이 하나 더 생겼습니다. from django.db import migrations, models class Migration(migrations.Migration): dependencies = [ ('articleapp', '0001_initial'), ] operations = [ migrations.AddField( model_name='article', name='content', field=models.TextField(null=True), ), migrations.AddField( model_name='article', name='created_at', field=models.DateField(auto_now_add=True, null=True), ), migrations.AddField( model_name='article', name='image', field=models.ImageField(null=True, upload_to='article/'), ), migrations.AddField( model_name='article', name='title', field=models.CharField(max_length=200, null=True), ), ] 이렇게 되니까 create 가 잘 적용되더라구요.... 음...이렇게 진행을 해도 문제가 없는 것인지, 왜 문제가 발생한 것인지 궁금하기도 합니다....
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
Local 좌표계와 World 좌표계에 대한 질문입니다.
안녕하세요! 앞선 질문들에서 어느정도의 해답을 얻었지만 제가 맞게 이해했는지 궁금하여 질문 드립니다. TransformDirection, 즉 Translate를 이용하지 않으면 해당 좌표계(Vector3.forward, back 등..)는 local 좌표계지만 월드 좌표계로 인식되어 키 입력 시 월드 좌표계로 동작합니다. 이후, TransformDirection 혹은 Translate를 이용하면 local 좌표계를 world 좌표계로 변환시켜, 즉 world 좌표계가 인식할 수 있게 통역을 해주어 local기준(gameObject기준)으로 키 입력이 된다고 이해했습니다. 제가 이해한 것이 맞는지, 혹은 어느 부분이 틀렸는지 궁금합니다~! + 추가 질문입니다. transform.position += transform.TransformDirection(Vector3.forward * Time.deltaTime * _speed); 에서 TransformDirection을 이용하면 local 좌표계가 world 좌표계로 변환된다고 하였는데, transform.position += transform.forward * Time.deltaTime * _speed; 와 같이 transform.forward를 사용하면 변환하지 않고 바로 사용 가능합니다. 그 이유가 궁금합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
assertThrows 입력오류입니다.
assertThrows가 오류가 납니다...도와주세요... 임포트는 이렇게 했습니다.
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
vscode에 eslint 적용
밑 질문에서 알려주신 코드대로 적용을 해봤는데, 저렇게 흐릿하게 표시가되고, 마우스를 올리면 unknown configuration setting 이라고 나옵니다 ㅠㅠ vs code 우측 하단에 ESLint 클릭하는 곳도 나오지 않습니다
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
검증 헤더
안녕하세요 , 기초적인 질문드려서 죄송합니다.. 검증 헤더 추가 할때 6:45 초에서 if-modified-since 값을 클라이언트 개발자(자바스크립트 개발자) 가 따로 넣어서 서버에 보내야되는건가요..? 서버에서 304으로 리스폰스 할때, 서버 자체에서 처리가 되는건지.. 아니면 개발자가 처리를 해야되는건가요..>?
-
미해결인스타그램 클론 - full stack 웹 개발
혹시 안내사항이 무슨 말인가요??
혹시 안내사항이 무슨 말인가요?? 그리고 선생님들이 사용하는 노션은 어떻게 해야 들어갈 수 있나요??
-
해결됨따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
[/api/users/logout] 에러 질문: Cannot read property 'x_auth' of undefined
안녕하세요 logout 기능을 구현했는데 아래 에러가 떠서 너무 힘들어서 질문드립니다. postman으로 POST 메소드로 login에 성공하였고, 토큰이 생기는것을 확인했습니다. 그 후 바로 postman으로 GET 메소드로 /api/users/logout을 하려 하는데 아래와 같은 에러가 발생하네요 ㅠㅠ 제 깃헙 주소에서 전체코드를 보실 수 있습니다. https://github.com/kth990303/boiler-plate-prac 어디가 문제인지 잘 모르겠네요. 답변 부탁드립니다 ㅜㅜ 감사합니다. TypeError: Cannot read property 'x_auth' of undefined at auth (C:\Users\User\Desktop\web_workspace\boiler_plate\middleware\auth.js:6:29) at Layer.handle [as handle_request] (C:\Users\User\Desktop\web_workspace\boiler_plate\node_modules\express\lib\router\layer.js:95:5) at next (C:\Users\User\Desktop\web_workspace\boiler_plate\node_modules\express\lib\router\route.js:137:13) at Route.dispatch (C:\Users\User\Desktop\web_workspace\boiler_plate\node_modules\express\lib\router\route.js:112:3) at Layer.handle [as handle_request] (C:\Users\User\Desktop\web_workspace\boiler_plate\node_modules\express\lib\router\layer.js:95:5) at C:\Users\User\Desktop\web_workspace\boiler_plate\node_modules\express\lib\router\index.js:281:22 at Function.process_params (C:\Users\User\Desktop\web_workspace\boiler_plate\node_modules\express\lib\router\index.js:335:12) at next (C:\Users\User\Desktop\web_workspace\boiler_plate\node_modules\express\lib\router\index.js:275:10) at C:\Users\User\Desktop\web_workspace\boiler_plate\node_modules\body-parser\lib\read.js:130:5 at invokeCallback (C:\Users\User\Desktop\web_workspace\boiler_plate\node_modules\raw-body\index.js:224:16) at done (C:\Users\User\Desktop\web_workspace\boiler_plate\node_modules\raw-body\index.js:213:7) at IncomingMessage.onEnd (C:\Users\User\Desktop\web_workspace\boiler_plate\node_modules\raw-body\index.js:273:7) at IncomingMessage.emit (events.js:327:22) at endReadableNT (internal/streams/readable.js:1327:12) at processTicksAndRejections (internal/process/task_queues.js:80:21) 코드는 아래와 같습니다. Auth.js (auth.js:6:29는 const token=req.cookies.x_auth 부분입니다.) const { User } = require("../models/User"); const auth=(req, res, next)=>{ // 인증처리 // client cookie에서 토큰 가져오기 const token=req.cookies.x_auth; // token을 jwt로 decoding User.findByToken(token, (err, user)=>{ if(err) throw err; if(!user){ return res.json({ isAuth: false, error: true }); } req.token=token; req.user=user; next(); }) } module.exports={auth}; User.js (Token 생성, findByToken function 부분) userSchema.methods.generateToken=function(cb){ const user=this; const token=jwt.sign(user._id.toHexString(), 'secretToken'); user.token=token; user.save(function(err, user){ if(err) return cb(err); cb(null, user); }); } userSchema.statics.findByToken=function(token, cb){ const user=this; jwt.verify(token, 'secretToken', function(err, decoded){ user.findOne({"_id": decoded, "token": token}, function(err, user){ if(err) return cb(err); cb(null, user); }); }); } const User=mongoose.model('User', userSchema); // 다른 파일에서도 이 모델을 쓸 수 있도록 module.exports={ User } Index.js (/api/users/login, /api/users/auth, /api/users/logout) app.post('/api/users/login', (req, res)=>{ // 요청된 이메일을 db에서 찾는다. User.findOne({email: req.body.email}, (err, user)=>{ if(!user){ return res.json({ loginSuccess: false, message: "Unvalid email" }); } // 요청된 이메일이 db에 있다면 비밀번호 일치여부 확인 user.comparePassword(req.body.password, (err, isMatch)=>{ if(!isMatch) return res.json({ loginSuccess:false, message:"Wrong password" }); // 일치 시, 토큰 생성 user.generateToken((err, user)=>{ if(err) return res.status(400).send(err); // 토큰을 쿠키에 저장 res.cookie("x_auth", user.token) .status(200) .json({ loginSuccess: true, userId: user._id }); }); }); }); }); // auth라는 미들웨어를 추가 // request를 받으면 call back function 호출 전에 middleware실행 app.get('/api/users/auth', auth, (req, res)=>{ res.status(200).json({ _id: req.user._id, isAdmin: req.user.role===0?false:true, isAuth: true, email: req.user.email, name: req.user.name, lastname: req.user.lastname, role: req.user.role, image: req.user.image }); }); app.get('/api/users/logout', auth, (req, res)=>{ console.log(req.user); user.findOneAndUpdate({_id:req.user._id}, { token: "" }, (err, user)=>{ if(err) return res.json({ success: false, err }); return res.status(200).send({ success: true }) }) }) 아래는 postman 화면 결과입니다. +) 전체적으로 수업시간의 코드는 이해가 되는데, 어떤 의식의 흐름으로 이렇게 작성하는지 신기할 때가 많습니다. 예를 들면 쿠키에서 토큰을 가져온다 할 때 let token=req.cookies.x_auth 에서 req에 cookies에서 쿠키 이름인 x_auth로 접근하면 바로 토큰이 나온다는 사실을 몰랐음. 이런 경우는 어떤 부분을 공부해야 할까요? 전체적으로 자바스크립트 실력이 붕 뜬 느낌입니다. (초보자라 질문이 좀 이상한 것 같기도 하네요...)
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
생성자를 사용안하고..
생성자를 사용하지 않고, 그냥 선언만 해서 사용해도 되는건가요? @autowired priavte MemeberService memberservice ; public void Join(){ memberservice.join(); }
-
미해결비전공자를 위한 개발자 취업 올인원 가이드 [통합편]
전자책 관련 질문
정말 정성스러운 강의 감사합니다. 전자책으로도 같은 내용의 작년판이 있던데 이 버전은 인강 버전과 내용이 많이 다른가요? 다름이 아니라, 인강은 좋지만 너무 길어서 추후에 한 번씩 생각날 때 다시 빠르게 훑어보고 싶지만 그것이 불가능하여 전자책으로 빠르게 훑어볼 수 있으면 좋겠다 싶었습니다. 근데, 이미 쓰신게 있더라고요. 그래서 내용차이가 심하지 않다면 그 전자책도 구매해서 필요할 때 빠르게 보면 좋겠다 싶어 질문드립니다.
-
미해결홍정모의 따라하며 배우는 C언어
이스케이프 언어 \b 질문입니다.
\b를 사용할때 printf("ABCDF\b\b\b\b\b")이런식으로 입력하면 처음의 A만 삭제가 되는데 printf("ABC\b\bDEF")이런식으로 사용하면 BC가 둘다 사라집니다 왜 이런현상이 발생하는ㄱ ㅓㄴ가요?
-
미해결[초급] 40분만에 훑어보는 Sass
4:21 css
강의 4:21 분 영상에 컴파일된 css 내용중 아래와 같이 되는게 맞는거아닌지요? .phoster span {} 이 오타인거같습니다. //scss .phoster-span { @extend %box-frame; span { display: inline-block; border-top: 2px solid #bb6bd9; padding: 16px 0 17px; text-align: center; } } //css .phoster-span span { display: inline-block; border-top: 2px solid #bb6bd9; padding: 16px 0 17px; text-align: center; }
-
미해결[라즈베리파이] IoT 딥러닝 Computer Vision 실전 프로젝트
no module named 'cv2'
안녕하세요 코드 실행을 눌렀는데 cv2가 없다는 메세지가 뜹니다 ㅠ 인터넷에 검색해봤는데 아나콘다에서 pip install opencv-python명령을 줘도 그대로입니다. 어떻게해야할까요??
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
db 하나 사용할때
Kafka Connector + DB 에서 메세지 큐잉 서비스를 사용하고 DB는 하나만 사용한다고 하셨는데 DB를 하나만 사용할 거면 메세지 큐잉 서비스가 필요한지에 대해서 궁금합니다.!
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
이 강의만으로 게임 서버 직무의 C++ 관련 면접 대비는 어려울까요?
이 이상을 공부해야한다면 어떤 부분을 주로 해아할까요? 그리고 게임회사가 요구하는 C++ 프로그래밍 능력, 지식은 어떤 식으로 함양하는 것이 좋을까요?
-
해결됨AWS(Amazon Web Service) 중/상급자를 위한 강의
선생님 질문있습니다.
iam policy 듣다가 궁금점이 생겼습니다... 조언을 받고자 합니다 ! iam user(사용자)에서 s3를 만든 후 s3role이라는 역할을 만들었습니다. 이때 $ aws sts assume-role --role-arn "copy arn" --role-session-name "test session" 이라는 명령어로 role에 임시자격을 구했는데요 이때 얻은 accessKeyId, secretAccessKey, sessiontoken로 s3에 접근할 수 있었습니다. (저는 사진에서처럼 .env에 credentials를 적어주었습니다.) 그런데 1시간이 지나면 토큰이 만료되어 접근이 안되고 다시 credentials를 얻어줘야 하더라구요. 이때 credentials를 갱신해주려면 다시 명령어를 통해서 1시간마다 credentials를 얻은후 credentials를 바꿔주는 방법밖에 없나요? (혹은 1시간이 아닌 좀 더 길게 만료세션을 늘려주는 방법밖에 없나요?)
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
SPP Net 문의
Spatial Pyramid Pooling 까지만 강의가 있고 그 뒤에 SPP-NET 강의가 없는것 같습니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
다른 강의 관련 질문을 드립니다.
현재 이 강좌를 수행하면서 문득 JPA도 병행해서 공부하고 싶은데요. 인프런에 있는 강의를 구매하면 책은 구매할 필요가 없는 지... 여쭙고 싶습니다.
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
코딩채점 사이트에서 자꾸 컴파일에러가 나요
소스코드를 올릴때 어떤 규칙이 있나요?