클래식 자동 증가 ID와 회사 이름이 포함된 테이블이 있습니다. 비즈니스 ID가 클라이언트에 노출되는 것을 방지하기 위해 UUID를 사용하고 싶습니다. 여태까지는 그런대로 잘됐다. 유일한 문제는 URL에서 호출할 경우 "api/businesses/10b940f2-5f8c-42ac-9c35-b6d0de45995b" 대신 "api/businesses/my-business"와 같이 보다 사용자 친화적인 형식을 사용하는 것이 더 좋다는 것입니다. ". 그렇다면 데이터 업데이트에 UUID를 사용하는 동안 GET 요청에 대한 테이블에 "슬러그" 열을 추가하면 이것이 모범 사례로 간주됩니까?
제 경우에는 견적 테이블에 레코드를 생성해야 하므로 패치는 다음과 같습니다.
PATCH /api/quotes/4dc93692-0ad9-4131-94fe-b4afec88d037 { "business_uuid": "10b940f2-5f8c-42ac-9c35-b6d0de45995b", "object": "My quote object", "another_column": "Hello", }
P粉2620731762024-03-29 09:51:26
데이터베이스 테이블 구조에 id
、uuid
、slug
가 포함된 경우 다음을 고려하세요.
id
. uuid
를 사용하세요. slug
를 사용하세요. slug
는 고유해야 한다는 점을 잊지 마세요. 하지만 서비스 간 기본 CRUD 작업의 경우 계속 slug
。不要忘记 slug
必须是唯一的。但对于服务之间的基本 CRUD 操作,我仍然建议继续使用 uuid
를 사용하는 것이 좋습니다. 또한 API용 데이터를 준비하는 데 도움이 되는 Laravel Resources의 Laravel 문서와 데이터 필드 중 하나를 처리하는 slugify 도우미 함수를 확인하는 것이 좋습니다.