最近在写小程序的时候,须要后端提供 API 接口,后端是使用 Laravel 开发的 API 接口,出于数据安全等诸多因素,就在返回的数据中实现了简单的 UUID 集成。小程序
软件版本:Laravel 5.6
因为 Laravel 5.6 自带了 UUID 的 package 支持,全部在开启 UUID 的时候,咱们只须要作几步关键的设置便可:后端
在 Model 对应的数据表设计的时候,须要经过相似下面的代码生成 uuid 支持:
这里咱们主要是修改了 id
字段的定义,不在使用默认的 increment()
,而是使用 uuid()
方法,不过在指定完 uuid()
以后,最好也记得加上 primary('id')
的定义。安全
Model 设置这一部分有两个关键的步骤,一是设置 $incrementing
属性为 false
:ui
public $incrementing = false;
二是经过 boot()
方法自动维护 uuid
:spa
有了前面的两个步骤,其实针对一个 Model 的uuid 设置基本上就完成了;不过咱们是能够将有关 uuid 部分的代码作成一个 trait 的,由于有了 trait,咱们的代码就能够重用了:设计
因此,最后咱们的代码差很少能够是这个样子的:code
咱们来看一个最简单的数据返回示例:接口
这样咱们就达到了在提供 API 接口的时候返回 uuid 而不是自增的 id 的目的了。图片