type UserDto = {
id: number; // PK
name: string; // 이름
thumbnail?: string; // 썸네일 주소 (optional)
}
로그인이 필요하지 않은 요청
POST /users/signup
회원가입을 합니다. 회원가입한 계정은 서버 정지 시 초기화됩니다.
type RequestBody = {
name: string; // 유저 이름
thumbnail?: string; // 썸네일 주소 (optional)
username: string; // 로그인에 사용될 아이디
password: string; // 로그인에 사용될 비밀번호
}
type ResponseBody = never;
POST /users/signin
로그인을 합니다. 회원가입 한 계정으로만 로그인할 수 있습니다.
type RequestBody = {
username: string; // 회원가입 시의 아이디
password: string; // 회원가입 시의 비밀번호
}
type ResponseBody = {
token: string; // 로그인이 필요한 요청에 사용됩니다.
}
GET /users
유저 목록을 가져옵니다. 회원가입한 계정이 있다면 함께 조회됩니다.
type ResponseBody = {
data: UserDto[];
}
GET /users/:userId
Id를 기준으로 특정 유저 하나의 정보를 가져옵니다.
type ResponseBody = UserDto;
로그인이 필요한 요청
아래 요청들은 /users/signin을 통해 발급받은 토큰을 request header에 함께 보내야 합니다. 헤더 이름은 Authorization이고, 별도의 접두사 없이 토큰만 그대로 보내면 됩니다.
GET /users/me
내 정보를 가져옵니다.
type ResponseBody = UserDto;
PATCH /users/me
내 정보를 수정합니다. 회원가입 시 보냈던 정보의 일부만 수정할 수도 있습니다.
type RequestBody = {
name?: string;
thumbnail?: string;
username?: string;
password?: string;
}
type ResponseBody = never;
사용법
server
디렉토리에.env.local
파일을 만들고, 원하는 포트 번호를 지정합니다yarn server dev
로 서버를 구동합니다https://localhost:해당 포트 번호
로 요청을 보냅니다API Specification
DTO
여러 요청에서 공통으로 사용되는 DTO 타입입니다
로그인이 필요하지 않은 요청
POST /users/signup
회원가입을 합니다. 회원가입한 계정은 서버 정지 시 초기화됩니다.
POST /users/signin
로그인을 합니다. 회원가입 한 계정으로만 로그인할 수 있습니다.
GET /users
유저 목록을 가져옵니다. 회원가입한 계정이 있다면 함께 조회됩니다.
GET /users/:userId
Id를 기준으로 특정 유저 하나의 정보를 가져옵니다.
로그인이 필요한 요청
아래 요청들은
/users/signin
을 통해 발급받은 토큰을 request header에 함께 보내야 합니다. 헤더 이름은Authorization
이고, 별도의 접두사 없이 토큰만 그대로 보내면 됩니다.GET /users/me
내 정보를 가져옵니다.
PATCH /users/me
내 정보를 수정합니다. 회원가입 시 보냈던 정보의 일부만 수정할 수도 있습니다.