목록분류 전체보기 (503)
저장을 습관화

- 증상 nest.js 프레임워크에서 로그인 기능을 만들기 위해 인증 용 가드 작성 중 가드가 참조할 strategy를 작성하였으니 계속해서 401 unauthorized가 발생하는 문제 - 원인과 해결 각 구간마다 로그를 찍어서 에러가 발생하는 부분을 확인 local-auth.guard.ts import { ExecutionContext, Injectable } from '@nestjs/common'; import { AuthGuard } from '@nestjs/passport'; @Injectable() export class LocalAuthGuard extends AuthGuard('local') { async canActivate(context: ExecutionContext): Promise..

메모.. nestJS에 요청이 들어올때 이에 반응하여 동작하는 기능들의 선후관계이다. 먼저 동작하는 부분에 에러가 발생했을 경우 후에 동작하는 부분까지 요청이 가지 않으니, 이 순서를 기억해둔다면 개발 중 문제가 생겼을때 원인을 찾는데에 도움이 될 것이다. 1. 요청 수신(Request) 2. 미들웨어 2-1. 전역 미들웨어 2-2. 모듈 미들웨어 3. 가드 3-1. 전역 가드 3-2. 컨트롤러 가드 3-3. 루트(경로) 가드 4. 인터셉터(컨트롤러 수행 전) 4-1. 전역 인터셉터 4-2. 컨트롤러 인터셉터 4-3. 루트 인터셉터 5. 파이프 5-1. 전역 파이프 5-2. 컨트롤러 파이프 5-3. 루트 파이프 5-4. 루트 매개변수 파이프 6. 컨트롤러 7. 서비스 (존재하지 않는 경우도 있음) 8. ..
- 증상 TypeError: Cannot read properties of undefined (reading 'config') at Object. (C:\생략\project_community\dataSource.ts:5:8) import dotenv from 'dotenv'; import { DataSource } from 'typeorm'; dotenv.config(); const dataSource = new DataSource({ // 생략 신규 프로젝트 진행 중 dataSource.ts 파일에서 dotenv의 설정 내용을 사용하지 못하는 문제가 발생 - 원인 tsconfig.json에 esModuleInterop 옵션이 설정되어 있지 않아서 발생한 문제 이 프로젝트는 nest.js 프레임워크로 개..
프로그래머스 SQL GROUP BY LV.2 성분으로 구분한 아이스크림 총 주문량 https://school.programmers.co.kr/learn/courses/30/lessons/133026 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 명 프로그래머스 SQL GROUP BY LV.2 성분으로 구분한 아이스크림 총 주문량 2. 문제 설명 다음은 아이스크림 가게의 상반기 주문 정보를 담은 FIRST_HALF 테이블과 아이스크림 성분에 대한 정보를 담은 ICECREAM_INFO 테이블입니다. FIRST_HALF 테이블 구조는 다음과 같으며,..
프로그래머스 SQL JOIN LV.2 상품 별 오프라인 매출 구하기 https://school.programmers.co.kr/learn/courses/30/lessons/131533 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 명 프로그래머스 SQL JOIN LV.2 상품 별 오프라인 매출 구하기 2. 문제 설명 다음은 어느 의류 쇼핑몰에서 판매중인 상품들의 상품 정보를 담은 PRODUCT 테이블과 오프라인 상품 판매 정보를 담은 OFFLINE_SALE 테이블 입니다. PRODUCT 테이블은 아래와 같은 구조로 PRODUCT_ID, PROD..

1. FULL JOIN 왼쪽 테이블(table 1)과 오른쪽 테이블(table 2) 레코드에 일치하는 항목이 있는 경우 모든 레코드를 반환한다. FULL OUTER JOIN 이라고도 하며, 잠재적으로 매우 큰 결과 집합을 반활할 수 있다. 예시 테이블 Customers) CustomerID CustomerName ContactName Address City PostalCode Country 1 Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany 2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 5021 Mexico 3 An..

1. LEFT JOIN 왼쪽 테이블(table 1)의 모든 레코드와 오른쪽 테이블(table 2)의 일치하는 레코드를 반환한다. 일치하는 항목이 없다면 오른쪽 테이블에서는 아무것도 가져오지 않는다. 오라클에서는 'LEFT OUTER JOIN'이라고 부른다. 예시 테이블 Customers) CustomerID CustomerName ContactName Address City PostalCode Country 1 Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany 2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 5021 M..
프로그래머스 SQL JOIN LV.2 조건에 맞는 도서와 저자 리스트 출력하기 https://school.programmers.co.kr/learn/courses/30/lessons/144854 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 명 프로그래머스 SQL JOIN LV.2 조건에 맞는 도서와 저자 리스트 출력하기 2. 문제 설명 다음은 어느 한 서점에서 판매중인 도서들의 도서 정보(BOOK), 저자 정보(AUTHOR) 테이블입니다. BOOK 테이블은 각 도서의 정보를 담은 테이블로 아래와 같은 구조로 되어있습니다. Column name..

1. INNER JOIN 두 테이블 모두에서 일치하는 값이 있는 레코드를 선택한다. 예시 테이블 Products) ProductID ProductName CategoryID Price 1 Chais 1 18 2 Chang 1 19 3 Aniseed Syrup 2 10 예시 테이블 Categories) CategoryID CategoryName Description 1 Beverages Soft drinks, coffees, teas, beers, and ales 2 Condiments Sweet and savory sauces, relishes, spreads, and seasonings 3 Confections Desserts, candies, and sweet breads 예시 1) select Pr..

1. JOIN 두 개 이상의 테이블 사이의 열을 기반으로 행을 결합하는데 사용한다. 예시 테이블 Orders) OrderID CustomerID OrderDate 10308 2 1996-09-18 10309 37 1996-09-19 10310 77 1996-09-20 예시 테이블 Customers) CustomerID CustomerName ContactName Country 1 Alfreds Futterkiste Maria Anders Germany 2 Ana Trujillo Emparedados y helados Ana Trujillo Mexico 3 Antonio Moreno Taquería Antonio Moreno Mexico 이때 Orders 테이블의 CustomerID 컬럼은 Customer..