일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- GIT
- 게임
- dfs
- Nest.js
- Bull
- AWS
- 자료구조
- nestjs
- typeORM
- TypeScript
- class
- game
- react
- MongoDB
- JavaScript
- flask
- Express
- 공룡게임
- 정렬
- MySQL
- OCR
- jest
- mongoose
- Python
- nodejs
- Queue
- Dinosaur
- Sequelize
- cookie
- Today
- Total
목록분류 전체보기 (651)
포시코딩
controller @Get('/test') @Render('test') test() { const categories1 = [ { name: '커피', subcategories: [ { name: '생두', }, { name: '원두', }, { name: '로스터기', }, ], }, { name: '차', subcategories: [ { name: '홍차', }, { name: '녹차', }, ], }, ]; const categories2 = [ { name: 'test', subcategories: [ { name: 'aa', }, { name: 'bb', }, { name: 'cc', }, ], }, ]; return { categories1, categories2 }; } test.hbs ..
@Entity() export class CompanyProduct { 위 코드를 통해 테이블을 만들 경우 테이블명을 companyProduct가 아닌 company_product처럼 camel case가 아닌 snake case로 만들어버린다. @Entity({ schema: 'nest-excel', name: 'companyProduct' }) export class CompanyProduct { 때문에 이와같이 name을 직접 지정하여 테이블명이 camel case로 생성되게 할 수 있는데 이럴 경우 첫 서버 시작에선 제대로 작동하지만 서버를 껐다 키는 등 두 번째 서버 시작부터는 Table 'companyProduct' already exists 에러가 발생한다. 이는 테이블명에 대문자가 들어가서..
SELECT u.userIdx, u.name, ( SELECT GROUP_CONCAT(c.name SEPARATOR ',') FROM userCountries uc JOIN country c ON uc.countryIdx = c.countryIdx WHERE uc.userIdx = u.userIdx ) AS countries FROM users u 만약 국가 뿐 아니라 성격, 취미 등과 같은 테이블이 추가되어 위와 같이 계속해서 서브쿼리를 사용하게 되면 쿼리 성능이 안좋아지기 때문에 애초에 LEFT JOIN을 활용하는 방법을 사용한다. SELECT u.userIdx, u.name, GROUP_CONCAT(c.name SEPARATOR ',') AS countries FROM users u LEFT JOI..
설치 npm i cookie-parser npm i -D @types/cookie-parser 세팅 tsconfig.json { "compilerOptions": { // ... "esModuleInterop": true, } } ES6 모듈 사양을 준수하여 CommonJS 모듈을 가져올 수 있게 설정 main.ts import { NestFactory } from '@nestjs/core'; import { AppModule } from './app.module'; import cookieParser from 'cookie-parser'; async function bootstrap() { const app = await NestFactory.create(AppModule); app.use(cookie..
https://hyperconnect.github.io/2020/02/11/Node-cpu-debug.html Node CPU 점유율 최적화 경험기 Node 어플리케이션에서 CPU를 최적화하는 방법을 소개합니다. hyperconnect.github.io
곧 큰 프로젝트에서 API 설계부터 들어가게 될텐데 REST API 설계 규칙에 대해 정리하다 처음 접하는 개념이 있어 간단하게 정리해본다. REST API도 성숙도 모델에 따라 단계별로 나누게 되는데 (사람마다 3단계라고 부르기도, 4단계라고 부르기도 하지만) 이 HATEOAS를 적용했냐에 따라 마지막 단계의 모델인지 아닌지로 나뉘는듯 하다. HATEOAS의 뜻은 풀이하자면 Hypermedia As The Engine Of Application State 즉, Hypermedia(링크)를 통해 애플리케이션의 상태 전이가 가능해야 하고, Hypermedia(링크)에 자기 자신의 정보가 담겨야 한다는 개념이다. 아직도 이해하기 어렵다면 아래 예제를 보면 바로 이해될 것이다. 보통 다뤄온 response 에..
공부하다 다이제스트가 뭔가 했는데 Input이 Hash function을 거쳐 나온 데이터를 Digest 라고 부른다고 한다. 출처: https://en.wikipedia.org/wiki/Cryptographic_hash_function Cryptographic hash function - Wikipedia From Wikipedia, the free encyclopedia Hash function that is suitable for use in cryptography A cryptographic hash function (specifically SHA-1) at work. A small change in the input (in the word "over") drastically changes the..
우선 mongodump 명령어를 사용할 수 있어야 한다. 나같은 경우도 docker를 통해서 mongodb를 사용하다보니 맥에서 해당 명령어가 없다고 나왔기에 설치를 진행했다. brew tap mongodb/brew brew install mongodb-database-tools dump mkdir backup mongodump --uri "mongodb://{username}:{password}@{ip or server address}:27017/{db_name}?authSource=admin" --out backup `backup` 이라는 폴더를 만든 후 거기에 해당 db dump를 넣게 되는데 bson 확장자 형태로 주르륵 들어간다. 여기서 내가 헤맸던 부분은 mongodb uri에 대해 쿼리스트링..
용어 정리 MFA (=Multi-Factor Authentication) 다중 요소 인증 여러 개의 인증 요소를 조합하여 사용자의 신원을 확인하는 보안 메커니즘 아이디 - 비밀번호, 일회용 비밀번호, 사용자의 생체 특징 등 세 가지 이상 다른 유형의 정보를 조합하여 구성한다. 2FA (=2-Factor Authentication) 이중 요소 인증 MFA의 하위 개념으로 MFA 인증 방식 중 두 가지 정도를 채용하는 방법이다. 보통은 아이디 - 비밀번호와 휴대폰 or 이메일로의 OTP 전송 방법을 사용한다. 2FA 방법들 푸시 인증 푸시 인증에서도 두 가지로 분류되는데 로그인 신호를 승인/거부 하기 로그인 후 해당 접속에 대해 확인하기 로그인 후 해당 접속에 대해 알림을 하는 방법으론 로그인 시도 횟수 시..
MFA, 2FA 관련해서 정리하다보니 XNUMXFA 등, XNUMX라는 말이 반복해서 언급되었다. 구글링해보니 죄다 이상한 번역 말투에다 내 궁금증을 해결해주지 못해 직접 정리 후 포스팅한다. XNUMX는 숫자를 나타내는 특별한 형식의 표기로, 보통의 경우 그냥 1을 대입해서 생각하면 편하다. 이 형식은 주로 자동화된 텍스트나 코드에서 사용되며, 특히 일련번호를 나타내거나 카운팅할 때 유용하다. 일반적으로 숫자가 아닌 문자열로 표현되어야 하는 상황에서 'XNUMX'라는 표기를 사용하면 나중에 숫자로 치환하는데 유용하다. 이렇게 함으로써 자동화된 프로세스에서 숫자를 동적으로 처리하거나 대체하는 작업을 쉽게 할 수 있다. e.g. 'XNUMX번 주문' == '1번 주문' 'XNUMXFA' == '2FA'