2014-12-19 4 views
0

내 응용 프로그램의 구조는 다음과 같습니다. -삽입하기 전에 UUID를 확인 하시겠습니까?

사용자는 배포에 속하며 해당 배포에서 역할 (읽기, 전체 등)이 있습니다. 각 배포는 조직에 속합니다.

사용자를 기존 조직에 추가 할 수있는 API를 작성 중입니다.

사용자를 추가하는 동안 최종 사용자는 role_id, deployment_id, organization_id을 보내야합니다. 특정 시점에서 사용자는 하나의 조직에만 추가 될 수 있지만 해당 조직의 여러 배포에 추가 될 수 있습니다. 각 배포마다 사용자는 다른 역할을 수행 할 수 있습니다.

각각의 ID는 실제로 UUIDv4입니다. 이제 API를 작성하는 사람은 이러한 UUID가 유효하고 기존 조직/배포/역할에 속해 있는지 확인한 후이를 삽입해야 할 책임이 있습니까? 적절한 외래 키 참조가 데이터베이스에 정의되어 있습니다. 외래 키에 의존하는 문제는 API 사용자에게 더 의미있는 방식으로 응답 할 수 없다는 것입니다.

답변

0

서버는 사용자 추가를위한 모든 전제 조건이 충족되는지 확인해야합니다. 이 작업이 수행 된 방법은입니다. REST 게스트가 아닙니다. 당신은 데이터베이스 제약에 의존 할 수 있고, 비즈니스 로직을 구현할 수 있습니다.

중요 사항은 전제 조건이 충족되지 않아 사용자를 추가 할 수없는 경우 REST 서버가 올바른 응답을 반환해야한다는 것입니다. 이에 대한 HTTP 상태 코드는 응답의 본문 정보를 포함해야

409 Conflict 

이유 충족되지 전제 조건. 이 정보는 JSON과 같은 구조화 된 데이터가 될 수 있습니다.

관련 문제