3.2.13 • Published 1 year ago

@surflux-studio/restful v3.2.13

Weekly downloads
-
License
MIT
Repository
-
Last release
1 year ago

@surflux-studio/restful

Install

bun

bun add @surflux-studio/restful

set aws credentials

# ~/.aws/credentials

[default]
aws_access_key_id =
aws_secret_access_key =

set .env

# .env

### AWS Secrets Manager
AWS_REGION=
AWS_SECRET_NAME=

### JWT
JWT_ADMIN=
JWT_TYPE=
JWT_ALGORITHM=
JWT_ISSUER=
JWT_AUDIENCE=
SERVICE_NAME=

### Database
PGUSER=
PGHOST=
PGDB=
PGPW=
PGPORT=

Response

  • Response의 Content-Type은 무조건 application/json
  • Ok는 딱히 신경 안씀
  • status 필히 기입
  • response.json() 은 RestResponseBody 타입입니다.

Status Code

  • 400 - Zod 유효성 검사 에러, 토큰이 없을때, 잘못된 요청
  • 401 - 유효하지 않은 토큰
  • 403 - 타겟에 대해서 토큰이 권한이 없거나 부족할때
  • 404 - API 가 없을때 (컨텐츠가 없는건 200임)

Secret Key

  • must set AWS_REGION and AWS_SECRET_NAME env
  • if NODE_ENV === 'development' return 'hello'
  • if NODE_ENV === 'production' return secret from AWS Secrets Manager

JWT

  • jwt: server의 JWT를 재시작시 발급합니다.
  • verifyJwt(jwt: string, condition: { admin?: boolean, type?: "a"|"r", subject?: string }): jwt 를 condition 과 비교해서 일치하지 않을 시에 throw, 일치 할 시에 payload 를 반환합니다.
  • decodeJwt: jwt의 payload를 확인합니다.

Usage

test 파일 확인

3.2.13

1 year ago

3.2.12

1 year ago

3.2.11

1 year ago

3.2.10

1 year ago

3.2.9

1 year ago

3.2.8

1 year ago

3.2.6

1 year ago

3.2.7

1 year ago

3.1.3

1 year ago

3.1.2

1 year ago

3.1.1

1 year ago

3.1.0

1 year ago

3.1.6

1 year ago

3.1.5

1 year ago

3.1.4

1 year ago

3.0.0

1 year ago

2.0.2

1 year ago

2.0.1

1 year ago

2.0.0

1 year ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago