인증, 패키지, 포트문제, API Client

김민준·2023년 6월 22일
0
HTTP
인증
패키지
사용중인 포트 문제 해결법
API Client

HTTP

Hypertext Transfer Protocol
네트워크로 데이터를 주고받는 양식의 정의(통신규약, Protocol) 중 하나이다.
가장 버용적이고, 널리 쓰이는 통신규약이다.(= 현존하는 대부분의 웹 서버가 HTTP 기반이다.)
브라우저의 요청 Request 와 서버의 반환 Response 로 보면 간단한다.

인증 Authentication

  • 쿠키 vs 세션
    쿠키 : 서버에서 response를 줄 때 보내는 정보, 브라우저의 header에 저장되며,http에서는 사용자가 조작이 가능하다는 보안상 문제가 있다.
    세션 : 세션 데이터는 서버에 저장되고, 세션마다 고유 ID를 쿠키로 주고받는다. 데이터가 서버에 있기 때문에 보안 취약점은 해결되나, 요청이 많을 경우 서버에 과부하가 걸리게된다.

패키지

  • npm init -y
    모듈 관리를 시작하기 위한 명령어
  • package.json
    패키지 정보가 간략하게 들어 있는 파일
  • package-lock.json
    패키지의 상세한 정보와 의존 정보가 들어있는 파일
  • node_modules에 모듈이 설치되어 있으나 환경에 맞는 파일들이 깔려있기 때문에 공유시에 제외해야한다.
  • devDependencies
    개발 단계에서만 필요한 모듈들
    npm -i -d <모듈명>으로 추가한다.

사용중인 포트 문제 해결법

Error: listen EADDRINUSE: address already in use :::3000
    at Server.setupListenHandle [as _listen2] (net.js:1318:16)
    at listenInCluster (net.js:1366:12)
    at Server.listen (net.js:1452:7)

위와 같은 에러가 뜬다면 3000 번 포트를 이미 사용중이라는 의미이다.

  • 해결법
  1. app.js에서 포트의 번호를 3000 외의 숫자로 바꾼다. 접속도 localhost:<바꾼숫자>로 들어간다.
  2. 이미 사용중인 포트를 종료시킨다.
    MAC : lsof -i : <원하는포트> > 포트를 점유하고 있는 PID를 얻을 수 있다.
    kill -9 <PID>로 프로세스를 종료시킨다.
    WINDOW : netstat -ano | find "포트번호" 로 PID를 찾는다.
    taskkill /f /pid <PID>로 프로세스를 종료시킨다.

API Client

API 클라이언트란?
프론트 엔드와의 연계 없이 API 요청을 확인하는 툴. 개발속도를 높이고, 치명적인 에러를 방지하는 효과가 있다. postman, Insomnia, Thunder Client등이 있다.

profile
node 개발자

0개의 댓글