jwt passport 질문입니다
미해결
탄탄한 백엔드 NestJS, 기초부터 심화까지
2종류의 user테이블 a_user, b_user 테이블을 가지고 있는데 각 유저테이블에 대해 jwt 검증을 나눠서 하고싶은데.. 아무리해도 안되는데 팁이 있을까요
- express
- mongodb
- nodejs
- NestJS
- ssr
172만명의 커뮤니티!! 함께 토론해봐요.
미해결
탄탄한 백엔드 NestJS, 기초부터 심화까지
2종류의 user테이블 a_user, b_user 테이블을 가지고 있는데 각 유저테이블에 대해 jwt 검증을 나눠서 하고싶은데.. 아무리해도 안되는데 팁이 있을까요
미해결
파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
안녕하세요 강사님? 정말 오랜만에 질문 드립니다 ㅎㅎ 0. 우선 하나 여쭙고 싶은 게, 혹시 멘토링을 진행하시나요? -괜찮으시다면 강의외적으로 몇가지 질문을 드리고 싶어서, 혹시 인프런에서 진행되는 멘토링 처럼, 따로 어디선가 멘토링을 진행하고 계시다면 신청하고 싶어서 여쭤봅니다 ㅎㅎ 1. 혹시 후속강의가 있을까요? 해당 강의에서의 DRF의 기능들은 대체로 기본적인 몇가지 기능들에 대해서 소개해주시는 느낌이 강해서, 백엔드/DRF쪽으로 심화된 강의를 준비하시는 게 있을지 궁금합니다. 2. DRF나 장고관련해서, 강의에는 나오지 않았지만 현업에서 필요한 몇가지 학습 키워드나 책을 추천해주실 수 있으실까요? 마지막으로 감사합니다~ 선생님 강의 덕분에 부트캠프기간이나 끝나고 나서도 장고라는 프레임워크에는 늘 자신이 있더라구요. 감사인사를 꼭한번 드리고 싶었습니다! 감사합니다~
해결됨
파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
def reverse(x): wordL = [] for i in str(x): wordL.append(str(i)) wordL.reverse() res = int("".join(wordL)) #int는 019 같은건 자동으로 0을 제외해서 만들어줌 return res 이렇게 풀어도 될까요? .
해결됨
파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
아래와 같이 코드를 작성했는데 강사님의 강의와 다른 점은 set대신 list를 사용하고 L == K일때 , 정답으로 가능한 리스트 안에 현재 추의 sum이 없으면 추가한다는 조건으로 if문을 작성해주었는데 Case#5에서 계속 Time Limit이 뜹니다. 이전 질문에서 리스트와 set에 원소 할당할 때 시간복잡도 차이가 없다고 하셨는데 if문을 한줄에 여러 조건을 추가할 수록 식나이 추가되는걸까요? import sys input = sys.stdin.readline K = int(input()) weights = list(map(int,input().split())) possible = [] max = sum(weights) def dfs(L,sum): if L == K: if 0 < sum <= max and sum not in possible: possible.append(sum) return dfs(L+1,sum+weights[L]) dfs(L+1,sum-weights[L]) dfs(L+1,sum) dfs(0,0) print(max-len(possible))
미해결
주피터 노트북으로 GAN CNN 실습중입니다. 가상환경 설정 잘 해놔서 GAN 모델이 잘 돌아가서 데이터 생성 잘했는데요 어제 CNN모델 생성해보니깐 커널이 계속 죽더군요 문제를 해결해보려고 구글링해서 max_buffer_size도 바뀌봤고요 그래도 문제가 해결되지 않아서 조금 냅뒀다가 다시 실행해보니깐 또 돼서 메모리 문제인가 싶었습니다 문제는 CNN 모델을 실행이 되니깐 이제 GAN 모델을 또 다시 돌리려다 또 다시 커널이 죽어버렸어요 메모리를 초기화해주려고 다른 창 다 꺼서 용량 충분히 확보해줬는데도 잘 안되네요 그리고 RAM 용량이 16gb 짜리라 메모리 용량도 충분하다고 생각했는데 이상해요ㅠㅠㅠ 저 같이 주피터 노트북 커널 죽었을 때 해결법 아시는 분 계신가요?..
미해결
파이썬 증권 데이터 수집과 분석으로 신호와 소음 찾기
이 강의를 듣고 나면 네이버금융 뿐만 아니라 다른 웹 스크래핑도 가능할 것이라 하셨는데, 처음부터 너무 막히니 속상하네요. 스크립트는 다음과 같습니다. import pandas as pd from bs4 import BeautifulSoup as bs url = f"https://finance.yahoo.com/quote/YM%3DF/history?p=YM%3DF" table = pd.read_html(url) response = requests.get(url, headers = headers) html = bs(response.text) table = html.select("table") temp = pd.read_html(str(table)) temp[0] 여기서 url부터 인식을 못하고 HTTPError가 뜹니다. 해결방법이 있을까요? HTTPError : HTTP Error 404: Not Found
해결됨
[리뉴얼] 처음하는 파이썬 백엔드와 웹기술 입문 (파이썬 중급, flask[플라스크] 로 이해하는 백엔드 및 웹기술 기본) [풀스택 Part1-1]
https://stackoverflow.com/questions/50319752/httpie-not-recognizing-second-parameter-of-get-request 처럼 ex) http GET "localhost/api/data?param1=3¶m2=7" 으로 해결 가능합니다 도움 될까 하여 올립니다.
해결됨
파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
안녕하세요 강사님, PasswordChangeForm 을 재정의 하는 부분에서 질문이 있어 글 남깁니다. 1. PasswordChangeForm은 SetPasswordForm을 상속받기 때문에 clean_new_password2를 오버라이딩하여 해당 함수가 기존 대로 실행 될때 단순히 old_password와 같은지 비교하는 로직을 추가한게 맞나요? 2. clean_new_password2를 오버라이딩 할 때, super().clean_new_password2()를 하지 않고 self.cleaned_data.get('new_password2')를 하게 기존의 pw1==pw2 확인하는 로직이 사라져 버리기 때문에 문제가 생기는 것이 맞나요? (실험결과 new_pw1, new_pw2 를 다르게 넣으면 new_pw1 으로 변경이 됩니다). 즉 super()... 를 적어줘야 기존 로직을 지킬 수 있는 것이죠? 3. clean_new_password1은 새로운 함수를 정의한 것인데 clean_ 이 앞에 붙었기 때문에 PasswordChangeForm의 로직이 동작할 때 무조건 해당 함수가 실행이 되는 것이 맞나요? 이 함수가 실행되는 시점이 궁금합니다. 감사합니다.
미해결
장고 설계철학으로 시작하는 파이썬 장고 입문
안녕하세요. 본 강의에 대한 내용을 실습하는데 PyCharm Professional이 필수적인지 문의 드립니다. 우선 community로 연습해보려고 하는데 실습이 안되는 파트가 있나요?
미해결
[개정판] 파이썬 머신러닝 완벽 가이드
안녕하세요. 강의 듣다가 궁금증이 생겨서 질문 드립니다. 이 Bike Sharing Demand 데이터 실습에서 원핫인코딩을 수행할 때, 인코딩을 먼저 수행 후 train과 test를 분리했는데, 실전을 포함해서 test 데이터가 이미 분리된 상태로 주어진 경우 도 많은 것 같아요. 근데 이럴 때 train과 test 각각 따로 인코딩을 수행하면 특정 칼럼에 대해 서로 없는 범주가 포함될 수 있을 것 같습니다. (예를들어 train에는 개/고양이만 있는데, test에는 개/고양이/원숭이 범주까지 있다던지..) 이 경우에 칼럼 갯수에도 차이가 발생할텐데 이때 모델 학습/예측시에 문제가 발생하지 않나요? 그렇다고 pd.concat 등으로 데이터를 합치고서 인코딩을 수행 후 다시 분리하면 데이터 리키징 문제가 발생한다고 들었습니다. (아니라면 말씀해주세요!) 머신러닝/딥러닝 강의 계속 잘 듣고 있습니다. 감사합니다.
미해결
내 업무를 대신 할 파이썬(Python) 웹크롤링 & 자동화 (feat. 주식, 부동산 데이터 / 인스타그램)
requirements.txt 파일에 접근해서 pip install -r requirements.txt 해야하지 않습니까? 근데 이 파일에 접근이 안되는데 혹시 이유좀 알려주실 수 있나용 이것 구글에 쳐봐도 잘 모르겠어요 ㅜ 다운 받은 강의 자료를 지워서 새로 깔아도 안되고 파일 위치를 옮겨봐도 소용없어요. 그리고 dir로 디렉토리 띄워놓고 cd requirements.txt 칠때 탭으로 자동완성도 안되는거 보니 뭔가 연관이 있는거 같은데 알려주시면 감사하겠습니다
미해결
프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
atom에서 script를 설치하라고 하시는데 atom에서 script가 없어서 무엇을 설치해야되는지 잘모르겠습니다. 다른 packages를 설치해야한다면 뭘 설치해야할까요?
미해결
[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
안녕하세요 강사님 mmdetection 관련해서 이론적으로나 실무적으로나 항상 많은 도움 받고있습니다. 강의 내용을 바탕으로 mmdetection code를 작성하던 도중 질문사항이 생겨서요 ㅎㅎ mmdetection Mask R-CNN 모델을 이용하여 추론결과 아래 사진과 같이 mask, bbox 두가지가 나타나는데 bbox위에 나타나는 title(coin) 대신 변수를 표시하고 싶습니다. class name, confidence score 가 아닌 ID, pixel number를 표시하고 싶습니다. 제 코드는 다음과 같습니다. img_name = path_dir + '/' + file_list[i] img_arr= cv2.imread(img_name, cv2.IMREAD_COLOR) img_arr_rgb = cv2.cvtColor(img_arr, cv2.COLOR_BGR2RGB) # cv2.imshow('img',img) fig= plt.figure(figsize=(12, 12)) plt.imshow(img_arr_rgb) # inference_detector의 인자로 string(file경로), ndarray가 단일 또는 list형태로 입력 될 수 있음. results = inference_detector(model, img_arr) #추론결과 디렉토리에 저장 model.show_result(img_arr, results, score_thr=0.8, title= bbox_color=(0,0,255),thickness=0.5,font_size=7, out_file= f'{save_dir1}{file_list[i]}') 이 결과 추론되는 사진은 다음과 같습니다 아래는 mmdetection/mmdet/core/visualization/image.py에 있는 imshow_det_bboxes 함수입니다. 아래 함수가 시각화 해주는 함수여서 해당 함수를 수정하면 될 것 같은데 아무리 뜯어봐도 어디를 고쳐야할 지 도저히 감이 오질 않습니다 ...ㅠㅠ def imshow_det_bboxes(img, bboxes, labels, segms=None, class_names=None, score_thr=0, bbox_color='green', text_color='green', mask_color=None, thickness=2, font_size=13, win_name='', show=True, wait_time=0, out_file=None): """Draw bboxes and class labels (with scores) on an image. Args: img (str or ndarray): The image to be displayed. bboxes (ndarray): Bounding boxes (with scores), shaped (n, 4) or (n, 5). labels (ndarray): Labels of bboxes. segms (ndarray or None): Masks, shaped (n,h,w) or None class_names (list[str]): Names of each classes. score_thr (float): Minimum score of bboxes to be shown. Default: 0 bbox_color (str or tuple(int) or :obj:`Color`):Color of bbox lines. The tuple of color should be in BGR order. Default: 'green' text_color (str or tuple(int) or :obj:`Color`):Color of texts. The tuple of color should be in BGR order. Default: 'green' mask_color (str or tuple(int) or :obj:`Color`, optional): Color of masks. The tuple of color should be in BGR order. Default: None thickness (int): Thickness of lines. Default: 2 font_size (int): Font size of texts. Default: 13 show (bool): Whether to show the image. Default: True win_name (str): The window name. Default: '' wait_time (float): Value of waitKey param. Default: 0. out_file (str, optional): The filename to write the image. Default: None Returns: ndarray: The image with bboxes drawn on it. """ assert bboxes.ndim == 2, \ f' bboxes ndim should be 2, but its ndim is {bboxes.ndim}.' assert labels.ndim == 1, \ f' labels ndim should be 1, but its ndim is {labels.ndim}.' assert bboxes.shape[0] == labels.shape[0], \ 'bboxes.shape[0] and labels.shape[0] should have the same length.' assert bboxes.shape[1] == 4 or bboxes.shape[1] == 5, \ f' bboxes.shape[1] should be 4 or 5, but its {bboxes.shape[1]}.' img = mmcv.imread(img).astype(np.uint8) if score_thr > 0: assert bboxes.shape[1] == 5 scores = bboxes[:, -1] inds = scores > score_thr bboxes = bboxes[inds, :] labels = labels[inds] if segms is not None: segms = segms[inds, ...] mask_colors = [] if labels.shape[0] > 0: if mask_color is None: # Get random state before set seed, and restore random state later. # Prevent loss of randomness. # See: https://github.com/open-mmlab/mmdetection/issues/5844 state = np.random.get_state() # random color np.random.seed(42) mask_colors = [ np.random.randint(0, 256, (1, 3), dtype=np.uint8) for _ in range(max(labels) + 1) ] np.random.set_state(state) else: # specify color mask_colors = [ np.array(mmcv.color_val(mask_color)[::-1], dtype=np.uint8) ] * ( max(labels) + 1) bbox_color = color_val_matplotlib(bbox_color) text_color = color_val_matplotlib(text_color) img = mmcv.bgr2rgb(img) width, height = img.shape[1], img.shape[0] img = np.ascontiguousarray(img) fig = plt.figure(win_name, frameon=False) plt.title(win_name) canvas = fig.canvas dpi = fig.get_dpi() # add a small EPS to avoid precision lost due to matplotlib's truncation # (https://github.com/matplotlib/matplotlib/issues/15363) fig.set_size_inches((width + EPS) / dpi, (height + EPS) / dpi) # remove white edges by set subplot margin plt.subplots_adjust(left=0, right=1, bottom=0, top=1) ax = plt.gca() ax.axis('off') polygons = [] color = [] for i, (bbox, label) in enumerate(zip(bboxes, labels)): bbox_int = bbox.astype(np.int32) poly = [[bbox_int[0], bbox_int[1]], [bbox_int[0], bbox_int[3]], [bbox_int[2], bbox_int[3]], [bbox_int[2], bbox_int[1]]] np_poly = np.array(poly).reshape((4, 2)) polygons.append(Polygon(np_poly)) color.append(bbox_color) label_text = class_names[ label] if class_names is not None else f'class {label}' if len(bbox) > 4: label_text += f'|{bbox[-1]:.02f}' ax.text( bbox_int[0], bbox_int[1], f'{label_text}', bbox={ 'facecolor': 'black', 'alpha': 0.8, 'pad': 0.7, 'edgecolor': 'none' }, color=text_color, fontsize=font_size, verticalalignment='top', horizontalalignment='left') if segms is not None: color_mask = mask_colors[labels[i]] mask = segms[i].astype(bool) img[mask] = img[mask] * 0.5 + color_mask * 0.5 plt.imshow(img) p = PatchCollection( polygons, facecolor='none', edgecolors=color, linewidths=thickness) ax.add_collection(p) stream, _ = canvas.print_to_buffer() buffer = np.frombuffer(stream, dtype='uint8') img_rgba = buffer.reshape(height, width, 4) rgb, alpha = np.split(img_rgba, [3], axis=2) img = rgb.astype('uint8') img = mmcv.rgb2bgr(img) if show: # We do not use cv2 for display because in some cases, opencv will # conflict with Qt, it will output a warning: Current thread # is not the object's thread. You can refer to # https://github.com/opencv/opencv-python/issues/46 for details if wait_time == 0: plt.show() else: plt.show(block=False) plt.pause(wait_time) if out_file is not None: mmcv.imwrite(img, out_file) plt.close() return img 감사합니다
해결됨
파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
AssertionError at /post/ The `.create()` method does not support writable nested fields by default. Write an explicit `.create()` method for serializer `instagram.serializers.PostSerializer`, or set `read_only=True` on nested serializer fields. 저 오류로 프로젝트 2번 갈아 엎었는데 똑같은 곳에서 계속 막히네요.
미해결
따라하며 배우는 NestJS
캡처한것처럼 deprecate됐다고 나오는데 그냥 이후 수업 진행해도 되는건가요?
해결됨
[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
안녕하십니까 교수님 최근 진행중인 프로젝트 수행을 위해서 강의를 듣고 있는 학생입니다. 현재 depth camera 를 이용하는 딥러닝 프로젝트를 진행하며 여러가지 오픈소스를 찾던 중 ssd-mobilenet 을 PASCAL VOC 로 학습한 것과 같은 알고리즘 ssd-mobilenet를 사용하여 COCO dataset으로 학습된 것을 봤습니다. 만약 오픈 소스를 사용하는 입장이면(학습하는 시간을 고려하지 않았을 때) 무조건 데이터 분류가 많고, 사진 당 오브젝트 수가 많은 COCO 데이터셋이 학습된 소스가 좋다고 생각하는데 혹시 다른 차이가 있을까 궁금해서 이렇게 질문드리게 되었습니다 학습 분류가 많을수록 FPS 에 의한 차이가 있나요? 학습 분류가 많을수록 특정 사물에 대한 detection 성능의 차이가 있을 수 있나요? - 예를 들어 person 데이터만 필요할 때 PASCAL VOC, COCO 또는 open image 를 사용할 때 성능 차이가 발생하나요? 다른 차이가 있을까요? 강의는 항상 잘 듣고 있습니다. 덕분에 다양한 프로젝트를 진행하여 취업까지 연결할 수 있었습니다. 아직 반정도 남았지만 분발하여 꼭 완강하도록 하겠습니다. 감사합니다!!
미해결
파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
함수 자체에는 문제가 없는 것 같은데 실행을 하면 사진과 같이 나옵니다.. 대체 어디가 틀렸는지 모르겠습니다ㅠㅠ
해결됨
[딥러닝 전문가 과정 DL1101] 딥러닝을 위한 파이썬 레벨1
[딥러닝 전문가 과정 DL1101] 딥러닝을 위한 파이썬 레벨1 이랑 기초대수학 이수중인데, 수강기한 조금만 더 늘려주실 수는 없을까요? ㅠㅠ 생각보다 3개월이 짧네요... .
미해결
탄탄한 백엔드 NestJS, 기초부터 심화까지
async existsByEmail ( email : string ): Promise < boolean > { try { const result = await this . catModel . exists ({ email }); return result ; } catch ( error ) { throw new HttpException ( 'db error' , 400 ); } } 에서 return result부분에서 오류가 발생합니다. src/cats/cats.repository.ts:20:7 - error TS2322: Type 'Pick<Document<Cat, any, any>, "_id">' is not assignable to type 'boolean'. 20 return result; ~~~~~~~~~~~~~~ exists() 따라가 보면 리턴타입이 boolean이 아닌거 같은데 어떤 부분을 확인해 보면 좋을까요? console.log로 result를 찍어보면 { _id: new ObjectId~~~} 가 나옵니다.
미해결
Slack 클론 코딩[백엔드 with NestJS + TypeORM]
import { Injectable , ExecutionContext , HttpException , HttpStatus , } from '@nestjs/common' ; import { AuthGuard } from '@nestjs/passport' ; import { JwtService } from '@nestjs/jwt' ; @ Injectable () export class JwtAuthGuard extends AuthGuard ( 'jwt' ) { constructor ( private readonly jwtService : JwtService , // @Inject(forwardRef(() => AdminsService)) // private readonly adminsService: AdminsService, ) { super (); } canActivate ( context : ExecutionContext ) { const request = context . switchToHttp (). getRequest (); const { authorization } = request . headers ; if ( authorization === undefined ) { throw new HttpException ( 'Token 전송 안됨' , HttpStatus . UNAUTHORIZED ); } //const token = authorization.replace('Bearer ', authorization); const token = authorization . replace ( 'Bearer ' , '' ); //console.log(token, 'token!!!'); request . user = this . validateToken ( token ); return true ; } validateToken ( token : string ) { const secretKey = process . env . SECRET ? process . env . SECRET : 'dev' ; try { const data = this . jwtService . verify ( token , { secret : secretKey , }); console . log ( data , '11번가데이터' ); return data ; } catch ( e ) { switch ( e . message ) { // 토큰에 대한 오류를 판단합니다. case 'INVALID_TOKEN' : case 'TOKEN_IS_ARRAY' : case 'NO_USER' : throw new HttpException ( '유효하지 않은 토큰입니다.' , 401 ); case 'EXPIRED_TOKEN' : throw new HttpException ( '토큰이 만료되었습니다.' , 410 ); default : console . trace ( e ); // console.log('광섭짱과 함께하는 코딩공부',) throw new HttpException ( '서버 오류입니다.' , 500 ); } } } } 이부분은 jwt.guard.ts 입니다 저 빨간줄에서 Trace: TypeError: Cannot read properties of undefined (reading 'verify') 이렇게 나오는데 왜 저렇게 나오는건지 도저히 모르겠네요 해당 토큰값도 잘 받아와서 verify 를 이용해 토큰 유효성 검사를 진행하려하는데 그부분에서 에러가 계속 납니다... 도와주세요