Today I Learned
-
[ NestJS ] @nestjs/config ConfigService 로 MongDB 설정하기Today I Learned 2023. 7. 1. 14:22
@nestjs/config package 설치 npm i @nestjs/config 또는 yarn add @nestjs/config .env 파일 만들기 DB_URL=mongodb+srv://아이디:암호@도메인/디비명 app.moudle.ts 파일 설정하기 // configModule import { Module } from '@nestjs/common'; import { AppController } from './app.controller'; import { AppService } from './app.service'; import { UsersController } from './users/users.controller'; import { UsersModule } from './users/users...
-
[ Datadog ] Node.js 애플리케이션 추적 (APM & APM Profiler)Today I Learned 2023. 5. 13. 11:37
APM Application Performance Monitoring 의 약자로 구동 중인 애플리케이션의 대한 성능측정과 에러탐지 등, 전반적인 애플리케이션 라이프사이클의 정보를 수집해 모니터링하는 툴이다. 보다 편리성을 위해서 다양하게 시각화한 Metrics, 그리고 API 테스트도 지원한다. 여러 애플리케이션에 설치가 가능하며 이를 한꺼번에 같은 UI 상에 보여주기 때문에 마이크로서비스 아키텍처에도 유용하게 사용될 수 있다고 합니다. 연결 조건 에이전트가 EC2에 설치된 이후 각각의 프로젝트폴더에서 진행 APM 설정하는 코드 → ~/app.js (require 최상단에 위치시키는 것을 권장) letsee@p-backend:~/ld-backend$ npm install dd-trace --save //..
-
Please verify that the package.json has a valid "main" entry 에러Today I Learned 2022. 8. 10. 15:31
https://stackoverflow.com/questions/64755386/npm-error-verify-that-the-package-json-has-a-valid-main-entry npm error - verify that the package.json has a valid "main" entry Im playing around with a simple trading bot using binance and cctx when i run my script with node index.js i get this long error: internal/modules/cjs/loader.js:323 throw err; ^ Error: stackoverflow.com 위 글에서 많이 참조해서 해결방법을 찾았..
-
MIME Type이란? (feat. Content-Type)Today I Learned 2022. 8. 2. 09:27
MIME Type이란? Multipose Internet Mail Extensions 메시지의 내용이 어떤 형식인지 알려주기 위한 것 Content-Type을 통해 헤더 값을 적절히 MIME-Type 값으로 설정해주면 된다. Content Type text/plain -> 일반 텍스트 문서 text/html -> HTML 문서 text/css -> css 문서 text/xml -> xml 문서 image/jpeg , image/png -> jpeg, png 이미지 파일 video/mpeg, audio/mp3 -> 비디오, 오디오 파일 application/zip -> 압축파일 application/octet-stream -> 아카이브 문서 (인코딩된 다중 파일)
-
[REACT] 리액트 value 에러 / e.persist();Today I Learned 2022. 7. 26. 14:49
리액트에서의 onChange , onClick 등에 들어오는 event 파라미터는 브라우저에서 사용되고있는 Event 인 Event와는 다른 객체이다. 해당 event 객체는 리액트에서 작성한 SyntheticEvent로 웹 브라우저에 있는 Event를 이용한 새로운 객체입니다. 그렇기 때문에 위의 비동기 처리시에는 null 값이 되며 해당 경고가 나타납니다. 리액트 공식 문서에서도 해당 부분을 해결하기 위해서는 e.persist 라는 함수를 사용하라고 되어있고 사용은 간단하다. 해당 onChange or onClick 에러 코드에서 e.persist()를 호출하면 된다. onChange={ (e)=>{ e.persist(); console.log(e.type); console.log(e.target.v..
-
HTTP Header에는 크기 제한이 있는가?Today I Learned 2022. 7. 23. 11:58
HTTP 통신을 사용하다 보면 헤더에 정보를 담아 보내는 일이 빈번하다. HTTP 헤더에는 크기제한이 있는가에 대한 의문이 들었다. 서치 결과 답은 상황에 따라 다르다는 것이다. 기본적으로 HTTP RFC에는 헤더의 최대 크기 제한은 없지만 우리가 사용하는 웹서버 소프트웨어에서 크기를 제한하고 있다. Here is the limit of most popular web server Web Server Defualt Limit Apache 8K Nginx 4K-8K IIS 8K-16K Tomcat 8K – 48K Node (13) - 16K No, HTTP does not define any limit. However most web servers do limit size of headers they acc..
-
[MAC] 웹스톰 단축키Today I Learned 2022. 7. 6. 09:55
control + return (Navigator에서) 새 파일 생성하기 option(alt) + F12 터미널창 열기 command + preference 열기 command + delete 한 줄 라인 없애기 command + return 현재줄에서 커서 유지하면서 다음줄 새로 생성하기 shift(command) + return 아래로 새로운 라인으로 줄바꿈하기 command + option(alt) + return 윗줄로 새로운 라인으로 줄바꿈하기 control + shift + J 라인 합치기 command + d 한 줄 복사하기 command + shift + U 대소문자 토글하기 option(alt) + 방향키(상하) selection 지정하기( 방향키 위: expand, 방향키 아래: shr..
-
프로젝트에 eslint-airbnb 적용해 나만의 eslint 규칙 만들기Today I Learned 2022. 7. 4. 19:24
npm i --save-dev eslint-config-airbnb-base eslint-plugin-import npm i --save-dev eslint-config-prettier 우선 npm i를 이용해 위와 같이 eslint-airbnb와 config-prettier를 설치해줍니다. module.exports = { env: { commonjs: true, es2021: true, node: true, }, extends: ["airbnb-base", "prettier"], parserOptions: { ecmaVersion: 12, }, rules: { "new-cap": 0, "max-len": 0, "valid-jsdoc": 0, "require-jsdoc": 1, "no-unused-va..