inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

모든 개발자를 위한 HTTP 웹 기본 지식

HTTP API 설계 예시

HTTP API 설계 질문

547

박은정

작성한 질문수 1

3

안녕하세요. 좋은 강의 감사드립니다.

HTTP API 설계와 관련하여 궁금한 점 질문 드리고자 합니다.

1. /members/{id} 와 같은 API URL에서 {id}에는 특정 회원을 식별할 수 있는 값, 주로 회원 테이블의 PK 값이 들어간다고 생각하면 될까요?

2. 만약 그렇다면 API 설계 시 URL에 PK 값을 노출시키는 것은 보안 상으로 문제가 되지 않는 것인가요?

3. 만약 회원 테이블의 PK가 id, email이라면(즉 특정 회원을 식별하기 위해서 id, email 두 개의 값이 필요하다면) /members/{id}/email/{email} 이런 식으로 설계해야 할까요?

실제 현업에서는 어떤 방식으로 하시는지 궁금해 여쭤봅니다.

감사합니다.

api http network rest

답변 1

1

김영한

안녕하세요. 박은정님

API의 리소스 설계와 실제 애플리케이션의 물리적인 설계는 개념상 서로 분리되는 것이 맞습니다.

따라서 {id}를 실제 데이터베이스의 PK를 사용해도 되고, 사용자의 로그인 id를 사용해도 되고, 또는 다른 개념을 넣으셔도 됩니다.

3번의 경우 둘다 들어가는 것 보다는 하나의 유니크한 값을 사용하는 것을 더 권장합니다.

감사합니다.

0

박은정

답변 감사합니다.

PUT, PATCH method 관련 질문

0

710

2

POST 등록과 PUT 등록 차이 중 의문점

0

667

2

pk값 중복이나 비지니스 로직일때 500에러 ..?

0

610

1

쿠키 & 세션을 REST API로 개발할 때

0

2541

1

캐시 관련 질문입니다.

0

616

1

ETag 질문입니다.

0

727

1

캐시의 설정 주체

0

534

1

영속쿠키 질문입니다.

0

503

1

협상(accept-language)

0

686

1

에러 코드의 구현 주체

0

438

1

웹서버가 구현?

0

596

1

필수헤더?

1

560

1

Host와 Port

0

774

1

다른 도메인이 같은 포트를 사용하는 경우

0

1259

1

표준 헤더와 임의 헤더

0

534

1

POST 등록 후 Location 헤더

0

569

1

프로세스의 상태가 변경되는 경우에 Post 사용

1

1809

1

지속연결에 대해서.

0

692

1

제가 아는 쿼리 파라미터 개념이 맞는지 확인 부탁드립니다.

0

593

1

캐시 내용중 no cache 일때

0

358

1

DNS 서버 관련 질문

1

748

1

캐시로 저장된 파일의 유효기간은 얼마나 되나요?

0

662

1

웹브라우저 요청흐름 질문입니다.

0

847

1

캐시 무효화 질문드립니다

0

561

1