• 카테고리

    질문 & 답변
  • 세부 분야

    웹 개발

  • 해결 여부

    미해결

HTTP API 설계 질문

21.03.02 22:51 작성 조회수 320

2

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

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

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

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

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

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

감사합니다.

답변 1

답변을 작성해보세요.

1

안녕하세요. 박은정님

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

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

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

감사합니다.

박은정님의 프로필

박은정

질문자

2021.03.04

답변 감사합니다.