inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

JWT 리턴 이후의 과정이 궁금합니다

미해결

탄탄한 백엔드 NestJS, 기초부터 심화까지

클라이언트가 로그인 하게되면 JWT를 발급받아 헤더에 이 토큰을 포함시켜서 다음 요청을 보내는 걸로 알고있습니다. 수업에서는 signin 메서드에서 token을 리턴해준 뒤에 직접 postman의 Authorization에 있는 Bearer Token 부분에 삽입해준 뒤에 다음 요청을 보냈는데 singin 메서드에서 리턴받은 token을 최종적으로 리턴하기만 하면 클라이언트에서 그 토큰을 자동으로 헤더에 포함시켜서 다음요청을 보내는 것인지 궁금합니다. 아니면 이 토큰을 프론트엔드단에서 받아서 다른 처리가 필요한지 궁금합니다.

  • jwt
  • express
  • nodejs
  • mongodb
  • ssr
  • NestJS
차동준 댓글 1 좋아요 1 조회수 513

Ground Truth로만 학습한다는 것에 대한 질문

해결됨

[개정판] 딥러닝 컴퓨터 비전 완벽 가이드

안녕하세요. 강의 4분 40초경부터 설명이 시작되는, Ground Truth로만 학습한다는 것이 잘 이해가 되지 않아 질문 올립니다. IOU를 구하기 위해서는 G.T값 이외의 비교 대상이 필요하다 생각하는데, class를 G.T로만 정한다는 것이 이해가 잘 안되네요.. 답변해주신다면 정말 감사하겠습니다!

  • 머신러닝 배워볼래요?
  • keras
  • python
  • 컴퓨터-비전
  • 딥러닝
  • tensorflow
alsdn2530 댓글 1 좋아요 0 조회수 292

BCryptPasswordEncoder 관련 Error

미해결

스프링부트 시큐리티 & JWT 강의

package com.junyharang.jwtstudy.config.jwt ; import com.fasterxml.jackson.databind.ObjectMapper ; import com.junyharang.jwtstudy.auth.PrincipalDetails ; import com.junyharang.jwtstudy.model.Member ; import lombok. RequiredArgsConstructor ; import org.springframework.security.authentication. AuthenticationManager ; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken ; import org.springframework.security.core. Authentication ; import org.springframework.security.core. AuthenticationException ; import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter ; import javax.servlet.http. HttpServletRequest ; import javax.servlet.http. HttpServletResponse ; import java.io.IOException ; // 스프링 시큐리티에 UsernamePasswordAuthenticationFilter 가 있다 . // /login 이 요청 오면 username, password 를 전송하면 (Post 로 ) // UsernamePasswordAuthenticationFilter 가 동작한다 . // 현재는 SecurityConfig 에서 FormLogin 을 disable 을 시켜서 동작하지 않는다 . @RequiredArgsConstructor public class JwtAuthenticationFilter extends UsernamePasswordAuthenticationFilter { private final AuthenticationManager authenticationManager ; @Override // /login 요청이 들어오면 로그인 시도를 위해 실행되는 Method public Authentication attemptAuthentication( HttpServletRequest request , HttpServletResponse response ) throws AuthenticationException { System . out . println( "JwtAuthenticationFilter : 로그인 시도 중 입니다 !" ) ; // 1. username, password 를 받는다 . try { // BufferedReader reader = request.getReader(); // // String input = null; // // while ((input = reader.readLine()) != null) { // System.out.println(input); // } // while 문 끝 // JSON 으로 전달된 값을 Parsing 할수 있게 해주는 객체 생성 ObjectMapper om = new ObjectMapper() ; Member member = om . readValue( request . getInputStream() , Member .class ) ; System . out . println( member ) ; // Token 생성 ( 회원의 이름과 Password 를 통해 ) UsernamePasswordAuthenticationToken authenticationToken = new UsernamePasswordAuthenticationToken( member . getUsername() , member . getPassword()) ; // PrincipalDetailsService 의 loadUserByUsername() 이 실행 된다 . // authenticationManager 에 Token 을 넣어 호출한다 . // authentication 변수에는 Login 정보가 담긴다 . Authentication authentication = authenticationManager . authenticate( authenticationToken ) ; // authentication 객체가 Session 영역에 저장된다 . PrincipalDetails principal = ( PrincipalDetails ) authentication . getPrincipal() ; // 출력이 된다면 Login 이 되었다는 의미 System . out . println( principal . getMember() . getUsername()) ; return authentication ; } catch ( IOException e ) { e . printStackTrace() ; } // try-cache 문 끝 System . out . println( "===========================================" ) ; // 2. authenticationManager 로 정상 인지 로그인 시도하면 PrincipalDetailsService 가 호출된다 . // 해당 Class 안에 loadUserByUsername() 가 자동 호출 // 3. PrincipalDetails 를 Session 에 담는다 . // Session 에 해당 내용을 담는 이유는 담지 않으면 권한에 대한 처리를 할 수 없기 때문이다 . // 4. JWT 를 만들어서 응답해 준다 . return null ; } // attemptAuthentication(HttpServletRequest request, HttpServletResponse response) 끝 } // class 끝 안녕하세요? 25강에 해당 부분을 하다가 DB에 회원값이 들어가 있는 걸 보고, 회원가입 로직이 누락 되었다는 부분을 찾기 위해 Controller를 보고 아래 내용을 추가 하였습니다. @PostMapping( " join " ) public String join(@RequestBody Member member ) { member . setPassword( bCryptPasswordEncoder . encode( member . getPassword())) ; member . setRolse( "ROLE_USER" ) ; memberRepository . save( member ) ; return " 회원가입완료 " ; } 그리고 나서 SecurityConfig에 아래 내용을 추가 하였구요. @Autowired private MemberRepository memberRepository ; @Autowired private CorsConfig corsConfig ; @Bean public PasswordEncoder passwordEncoder(){ return new BCryptPasswordEncoder() ; } // passwordEncoder() 끝 private final CorsFilter corsFilter ; 근데 아래와 같은 Error가 발생 합니다. Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. 2022-01-19 00:25:02.184 ERROR 17752 --- [ restartedMain] o.s.b.d.LoggingFailureAnalysisReporter : *************************** APPLICATION FAILED TO START *************************** Description: Parameter 1 of constructor in com.junyharang.jwtstudy.controller.RestAPIController required a bean of type 'org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder' that could not be found. Action: Consider defining a bean of type 'org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder' in your configuration.

  • jwt
  • Spring Security
  • spring
댓글 1 좋아요 0 조회수 3068

Entity에 @Data에 대한 질문

미해결

스프링부트 시큐리티 & JWT 강의

안녕하세요? 강의를 듣다가 궁금한 점이 있어 질문 드립니다. Entity Class에 Setter를 사용하면 안된다고 배웠는데, @Data를 사용하시는 이유가 있으실까요??

  • spring
  • Spring Security
  • jwt
댓글 1 좋아요 0 조회수 408

반복문 피보나치 수열 질문

미해결

파이썬(Python) 기초부터 실무까지 part.1

안녕하세요 수업을 듣고 있는 수강생입니다. 다름이 아니라, 피보나치 수열에서 해당 코드는 입력받은 수까지 계속 연산을 하고 있으며, 단순히 프린트 하는 명령이 없기 때문에 프린트를 하지 않는것으로 보이는데, 해당 입력 값이 13일 때, for문 자체를 빠져나가게 하는 방법이 있을까요? else : final_fibo = n1 + n2 n1 = n2 n2 = final_fibo if final_fibo < insertNumber: print (final_fibo , " " )

  • python
댓글 2 좋아요 0 조회수 461

자료형 제어문이 나오지 않습니다.

미해결

Jupyter Notebook으로 시작하는 Python

주피터 노트북 실행까지는 되었으나 자료형 제어문등이 나오지 않습니다.

  • python
Jung Jin-woong 댓글 2 좋아요 0 조회수 328

/와 //

미해결

입문자를 위한 파이썬 기초 따라잡기

/ 와//둘 다 나누기로 몫이 나오나요? 코드 실행했을때 값이 다르게 나와서요

  • python
  • python
장인서 댓글 0 좋아요 0 조회수 391

에디터 모드 calc

미해결

입문자를 위한 파이썬 기초 따라잡기

에디터 모드에 작성한 calc가 실행된게 왜 쉘모드에서 보여지는 건가요?

  • python
  • idle
  • python
장인서 댓글 0 좋아요 0 조회수 312

html에서 id 속성에 대해 간단한 질문..

해결됨

[신규 개정판] 이것이 진짜 크롤링이다 - 기본편

어느 사이트에서든 어떤 태그 내의 id 속성값은 유일무이하게 해당 태그에서만 사용된다고 봐도 정말로 문제없나요? 이전에 html 실습하면서 공부했을 때 id속성이나 class속성이나 두개 사용하면서 크게 다른게 없다고 느꼈는데 이 영상을 보면서 id가 실무에서는 해당 태그에만 적용되도록 사용하는건지 정확히 알고싶습니다.

  • 웹-크롤링
  • python
ㅇㅅㅇ 댓글 1 좋아요 1 조회수 247

큰따옴표 질문입니다.

미해결

[리뉴얼] 처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지]

강의 13:23 import pymysql db = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='funcoding', db='ecommerce', charset='utf8') cursor = db.cursor() for index in range(10): product_code = 215673140 + index + 1 sql = """INSERT INTO product VALUES( '""" + str(product_code) + """', '스위트바니 여름신상5900원~롱원피스티셔츠/긴팔/반팔', 23000, 6900, 70, 'F'); """ print (sql) cursor.execute(sql) db.commit() db.close() -------------------------------------- 13:23 에서 '""" + str(product_code) + """', '스위트바니 여름신상5900원~롱원피스티셔츠/긴팔/반팔', 23000, 6900, 70, 'F'); """ '""" + str(product_code) + """' 이부분에서 str로 이미 문자열이 되었는데 큰따움표 쓰는거랑 작은따움표를 왜 추가하신건지 궁금합니다. 그냥 'str(product_code)' 로 쓰면 안되나요?

  • 데이터 엔지니어링
  • sql
  • mysql
  • DBMS/RDBMS
  • python
댓글 1 좋아요 0 조회수 434

Django 로 이용한 머신러닝/딥러닝 서비스

해결됨

파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트

안녕하세요 강사님 퀄리티 높은 강의와 디테일좋은 강의 감사드립니다. 머신러닝에도 관심이 있어 공부를 하던와중에 내가직접 서비스를 하려면 백엔드의 지식도 필요할듯하여 감사하게 강의를 듣고있습니다. 머신러닝/딥러닝 서비스를 사용하기위한 백엔드 서비스가 Django 가 좋은것같은데 현업에서도 많은 사용을 하고있나요? (아마 강사님께서도 많은 컨설팅을 해주셔서 아실거라 생각이 들어 질문을 드립니다.) 딥러닝 모델을 웹에서 돌리기위해서는 병렬처리?가 필요할듯한데 Django 에서는 이러한 부분에대한 솔루션이 있는지 또한 궁금합니다. 감사합니다.

  • django
  • react
  • python
  • docker
YoonEo Choi 댓글 2 좋아요 0 조회수 3721

함수형 프로그래밍

해결됨

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

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강의 하시다가 ' 함수형 프로그래밍' 에 대해서 말씀하셨는데, 이 키워드로 검색하니 많은 강좌가 나와서 올바른 결과인지 무엇보다 잘 모르겠습니다. 하나 추천해주시면 감사하겠습니다. 현 상황은 취업준비생으로, Inflearn Original 로 파이썬 초급부터 시작하여 마지막 단계까지 공부할 계획이라 초급부터 듣고 있습니다. 또한 기계공학 전공자라 CS 지식이 부족하여 정보처리기사 필기 준비와 병행하고 있습니다. (앞으로 python backend를 준비하면서 MLOps 쪽으로 커리어를 진행할까 생각 중입니다.)

  • 함수형프로그래밍
  • python
김제하 댓글 1 좋아요 0 조회수 219

which pyhon이 왜 안될까요..?

미해결

타입 파이썬! 올바른 class 사용법과 객체지향 프로그래밍

which python을 입력하면 which : 'which' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 이름이 정확한지 확인하고 경로가 포함된 경우 경로가 올바른지 검증한 다음 다시 시도하십시오. 위치 줄:1 문자:1 + which python + ~~~~~ + CategoryInfo : ObjectNotFound: (which:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException 라는 오류가 발생합니다. 어떻게 해야되나요

  • python_error
  • python
  • oop
rdh23294 댓글 1 좋아요 1 조회수 456

Python Selenium code 관련 질문드려요

미해결

from selenium import webdriver driver = webdriver.Chrome('C:/Users/estee/Desktop/파이썬 작업물/chromedriver.exe') import time # 주소모음 naver_GIBH = "https://map.naver.com/v5/search/%EA%B5%AC%EC%8A%A4%EC%95%84%EC%9D%BC%EB%9E%9C%EB%93%9C%20%EB%B8%8C%EB%A3%A8%ED%95%98%EC%9A%B0%EC%8A%A4/place/505375149?c=14140682.3022615,4508106.9534795,15,0,0,0,dh" naver_GBK = "https://map.naver.com/v5/entry/place/996095686?c=14133872.9335375,4519631.0127127,15,0,0,0,dh" naver_YONGSAN = "https://map.naver.com/v5/entry/place/1905880476?c=14133837.3558283,4513226.0701902,15,0,0,0,dh" naver_adresses = [naver_GIBH, naver_GBK, naver_YONGSAN] # 평점과 리뷰 크롤링 for adress in naver_adresses : driver.get(adress) driver.implicitly_wait(10) driver.switch_to.frame('entryIframe') rating = driver.find_element_by_xpath('//*[@id="app-root"]/div/div/div[2]/div[1]/div/div/div[1]/div/span[1]').text submenu_name = driver.find_element_by_xpath('//*[@id="app-root"]/div/div/div[2]/div[3]/div/div/div/div/a[3]/span').text # 메뉴가 5개 나올 때는, 4번째 탭을 이용하고, 메뉴가 4개 나올 때는 3번째 탭을 이용 if submenu_name != "리뷰" : driver.find_element_by_xpath('//*[@id="app-root"]/div/div/div[2]/div[3]/div/div/div/div/a[4]/span').click() else : driver.find_element_by_xpath('//*[@id="app-root"]/div/div/div[2]/div[3]/div/div/div/div/a[3]/span').click() # 리뷰개수 print( driver.find_element_by_xpath('//*[@id="app-root"]/div/div/div[2]/div[5]/div[4]/div[3]/h2/span').text ) driver.close() 해당 코드는 네이버 지도의 각 매장 별 리뷰 개수를 가지고 오는 코드에요. naver_GIBH , naver_GBK 링크는 리뷰 개수를 불러오는데, 마지막 naver_YONGSAN 링크의 리뷰 개수는 들고오지 못하더라구요. 혹시 이 코드에 관해 봐주실 수 있을까요 ? + 추가 질문인데, 제가 Selenium을 통해서 리뷰개수를 찾아오는 방식은 selenium으로 리뷰 탭을 선택하고 나서, 들고 오는 거에요. 근데 네이버 지도가 인스타그램처럼 스크롤을 내리면 정보를 불러오는 방식으로 설계되어 있더라구요. 혹시 이와 관련해서 Selenium으로 클릭하지 않고, crawling 하는 방법이 따로 있을지도 질문드려요 .

  • python
  • selenium
조용한 도미 댓글 0 좋아요 0 조회수 232

구글 코랩에서 한글 폰트 설정

해결됨

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

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 시각화 설정 부분에서 알려주신대로 했는데 안돼서 찾아봤는데 구글 코랩을 사용하시는 분들은 다르게 해야하더라구요! 주피터 노트북하고 거의 동일하다고 생각했는데 이 부분 추가해주시면 좋을 것 같습니다ㅎㅎ 저는 구글링 통해서 글꼴깔고 리빌드 하고 재시작 하는 방법으로 플롯의 네모가 한글로 정상적으로 나왔습니다

  • 코랩
  • numpy
  • python
  • pandas
손민정 댓글 2 좋아요 1 조회수 1074

formatting 관련 질문

해결됨

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

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. ------------------------------------------------------------------------------------ 1) % 로 하는 format 방법은 블랭크에 표시하는 것이 없는가요???? print('{:_>3d}'.format(25)) 처럼 정수에서 그리고 string에서도 .format을 사용했을 때 블랭크에 언더바 같이 표시할 수 있습니다. 하지만 print('%' % ()) 문법을 사용했을 때는 표시할 수가 없나요?? 2) 강의에서 알려주신 사이트를 보니 정수형의 경우, d도 사용하지만 int의 i 도 사용가능하다고 하여 직접 해본 결과, 동일한 결과가 나왔습니다. 하지만 현업에서는 무엇을 더 많이 사용하나요???

  • format
  • python
김제하 댓글 1 좋아요 0 조회수 191

도커로 서비스 시작하기 강의에서

미해결

Do It! 장고+부트스트랩: 파이썬 웹개발의 정석

docker-compose up -d --build 후 마이그레이션 하는 과정에서 makemigrations 적용이 되지 않아서 질문 올려드립니다. 문제가 뭔지 열심히 찾아봐도 도통 뭑가 문제인지 모르겠습니다 github 주소는 여기있습니다

  • HTML/CSS
  • bootstrap
  • javascript
  • python
  • django
  • aws
  • tdd
  • docker
앙앙기모 댓글 1 좋아요 0 조회수 411

런타임 관련 질문드립니다.

미해결

[개정판] 딥러닝 컴퓨터 비전 완벽 가이드

from mmdet.apis import init_detector, inference_detector import mmcv 를 할때 런타임 다시 시작을 하는데 왜 그래야 하나요..? 설치를 하게 되면 바로 실행이 되어야 한다고 생각하는데, 그렇지 않아서 문의드립니다. 또한 런타임이 어떤 역할을 하는지 알려주시면 감사하겠습니다. +) 커널과 런타임은 같은 개념인가요?

  • python
  • 머신러닝 배워볼래요?
  • keras
  • tensorflow
  • 컴퓨터-비전
  • 딥러닝
이준우 댓글 1 좋아요 0 조회수 359

JWT를 굳이 사용하는 이유가 뭘까요?

미해결

스프링부트 시큐리티 & JWT 강의

무료로 이렇게 좋은 강의영상 올려주셔서 정말 감사합니다. 너무 많은 도움이 되네요. 전부터 JWT 토큰을 왜 사용하는지에 대해서 의문을 가지고 있었는데, 명확한 답이 나오지 않아 질문드립니다. 세션에 대한 문제점 (서버 확장시, 스티키 세션을 사용하거나, 세션 클러스터링을 해야하는 문제)를 해결하기 위해 사용된다는 것은 알겠습니다만, JWT를 사용하는 예제들 보면 리프레시토큰도 함께 사용하여, 어세스토큰을 제발급하는 용도로 사용하더군요. 그럼 리프레시토큰은 결국 세션과 마찬가지로 DB(혹은 레디스 등의 메모리 DB)등에 저장이 되어 관리되어질텐데, 그렇게 된다면 세션과 결국 별 차이점이 없지 않을까요? 이 문제를 가지고, 여러 사람들에게 물어보았으나, 딱히 세션에 비해 가지는 장점이 없어지는 것 같더라고요. 물론 리프레시토큰을 사용하지 않고 AccessToken만 사용하는 경우에는 장점이 있다는 것을 알겠습니다. 1. 정리하자면, RefreshToken을 사용하는 경우 세션에 비해 가지는 장점이 있는가? 2. 없다면 굳이 JWT는 왜 사용하는가? 입니다

  • jwt
  • Spring Security
  • spring
신동훈 댓글 1 좋아요 5 조회수 3037

파이썬, 장고 버전에 대한 질문

미해결

파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트

안녕하세요 선생님 조금전 수강을 시작한 학생입니다. 제가 groom ide를 사용하여 django 프로젝트를 개발한 후 heroku에 배포를 하려니까 groom이 제공하는 3.7.4 버전을 지원하지 않아 git push heroku master 에서 빌드에러가 났었습니다. https://devcenter.heroku.com/articles/python-support Supported runtimes python-3.10.1 on all supported stacks python-3.9.9 on all supported stacks python-3.8.12 on all supported stacks python-3.7.12 on all supported stacks python-3.6.15 on all supported stacks 강좌가 제작되고 시간이 흘러 지금은 3.7.12까지 나왔는데요 anaconda에선 3.7.11이 최신 버전이더라고요. 강좌를 따라가다가 나중에 heroku에 배포할때 문제되는 부분은 없을까요? 또한 장고도 현재 4.0버전이 나왔고 3.0버전을 더이상 지원하지 않고 3버전 중에선 3.2.10이 최신 릴리즈라 3.2.10을 설치해놨습니다. 앞으로 강좌를 진행하며 이 부분에서 문제되는 부분이 있을까요? 감사합니다.

  • python
  • django
  • react
  • python
  • django
  • docker
준영 댓글 1 좋아요 0 조회수 256

인기 태그

인프런 TOP Writers

주간 인기글