image
Akan.js
한국어
문서컨벤션레퍼런스Cheatsheet
image
Akan.js
문서컨벤션레퍼런스Cheatsheet
MIT 라이선스 하에 배포되었습니다.
Akan.js 공식 컨설팅 서비스Akansoft
Copyright © 2026 Akan.js 모든 권리 보유.
시스템 관리자bassman
일반
• 인증
• 스키마 설계
• 엣지 컴퓨팅
• 파일 관리
• Single Sign-On
• DataList & Enum
인터페이스
• CRUD
• Endpoint
• Form
관측성
• 로깅
• 의존성 주입
• 에러 처리
• 메트릭
성능
• 캐싱
• 이미지 최적화
• 지연 로딩
• 쿼리
• 큐
• 실시간
개발
• 문서화
• 스크립트
• 도커
• 쿠버네티스
일반
• 인증
• 스키마 설계
• 엣지 컴퓨팅
• 파일 관리
• Single Sign-On
• DataList & Enum
인터페이스
• CRUD
• Endpoint
• Form
관측성
• 로깅
• 의존성 주입
• 에러 처리
• 메트릭
성능
• 캐싱
• 이미지 최적화
• 지연 로딩
• 쿼리
• 큐
• 실시간
개발
• 문서화
• 스크립트
• 도커
• 쿠버네티스
다음
스키마 설계

인증

Akan의 인증은 두 가지 질문에 답합니다. 누가 이 API를 호출했는지, 그리고 그 사람이 이 기능을 써도 되는지입니다. 각 signal 앞에 작은 문을 세운다고 생각하면 쉽습니다.
  • Middleware는 요청에서 로그인 정보를 읽습니다.
  • Guard는 권한이 없는 사용자를 막습니다.
  • `.with()`는 현재 사용자처럼 서버가 확인한 값을 handler에 넣어줍니다.

Guard 사용하기

API 자체를 어떤 사용자에게 막아야 한다면 guard를 사용합니다. 예를 들어 프로필 수정 API는 로그인한 사용자만 실행할 수 있어야 합니다.
사용자 전용 mutation

.with() 사용하기

클라이언트가 직접 보내면 안 되는 값이 필요할 때 `.with()`를 사용합니다. 현재 사용자, 현재 관리자, 요청 객체, account가 대표적인 예입니다.
서버에서 현재 사용자 받기

Guard와 .with() 구분

  • 로그인하지 않은 사용자가 API에 들어오면 안 된다면 `guards: [User]`를 사용합니다.
  • API가 어떤 사용자가 호출했는지 알아야 한다면 `.with(Self)`를 사용합니다.
  • 대부분의 사용자 전용 API는 둘 다 사용합니다. 먼저 guard로 막고, handler 안에서는 `.with(Self)`로 현재 사용자를 받습니다.

꿀팁

  • 현재 사용자를 뜻한다면 client에서 `userId`를 받지 말고 `.with(Self)`를 사용하세요.
  • 관리자 화면은 `Admin` guard, 사용자 화면은 `User` guard로 나누면 이해하기 쉽습니다.
  • 누가 API를 호출할 수 있는지 바로 보이도록 권한 조건은 signal 근처에 두세요.
인증
Guard 사용하기
.with() 사용하기
Guard와 .with() 구분
꿀팁