laravel 在API路由中使用UUID-平衡隐私和性能[已关闭]

wwwo4jvm  于 2023-03-19  发布在  其他
关注(0)|答案(1)|浏览(116)

已关闭。此问题为opinion-based。当前不接受答案。
**想要改进此问题吗?**请更新此问题,以便editing this post可以用事实和引文来回答。

2天前关闭。
Improve this question
如何在API路由中使用公共UUID?我是否应该在路由中使用UUID,然后在关系的情况下将它们转换为内部ID以避免性能损失,而如果我只需要检索一个记录,则使用带有UUID的WHERE子句,因为与ID相比延迟可以忽略不计。现在,在隐私级别较低的路由中也使用UUID是否有意义?
{{baseURL}}/businesses/bc75a13c-2c82-47fc-90fc-7df035e18c64/reviews/6321e43d-985b-422e-8644-e6082adbd90c
在这种情况下,企业仍然是公开的,任何人都可以看到数据。评论也是如此。使用这种方法还是使用经典的自动递增ID更可取?
{{baseURL}}/businesses/1/reviews/1
换一种说法,我还是有疑虑的,就说它很“可玩”,那就放2,找到第二篇评论,等等。

vm0i2vca

vm0i2vca1#

如果在URL中使用UUID,将不会发生任何事情。根据我的经验,在我所有的项目中,我使用UUID。(包括API)。

示例

假设我有一个预订模块的更新操作,那么我使用

Route::put('/{booking_id}', [BookingController::class, 'update']);

在函数中

public function update(Request $request, $id)
{
    $booking = Booking::whereUuid($id)->first();
    # ...
}

阅读更多
1.什么是UUID

相关问题