PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

关于Laravel忽略白名单和黑名单

藏色散人
藏色散人 转载
2020-07-25 13:16:23 3501浏览

下面由laravel/" target="_blank">laravel教程栏目给大家介绍laravel忽略白名单和黑名单,希望对需要的朋友有所帮助!

区别

$fillable 白名单: 允许插入字段  默认为: []
$guarded 黑名单: 不允许插入字段 默认为: ['*']  //所有字段设置为黑名单 罪魁祸首

代码

$request->query->set('user_id', Auth::id());Comment::create( $request->all());

这我钟爱的写法,能少写一个就不写两个代码。
当然会插入失败。

解决1

手动把所有字段设置加入到 protected $fillable = ['user_id','nickname',....];

不考虑这种写法,太麻烦了。

解决2

protectd $guarded = [];

这种写法才爽,因为默认所有字段都是黑名单,重置下就好了。

解决3

static $unguarded = true;

忽略 名单的验证。
解决2 一样舒服。

2和3的问题

要了解为什么需要 白名单黑名单,再做 2,3 的步骤。

并且能保证用户发送不了 破坏 系统的数据。
(比如我这个的user_id,用户发送user_id过来也没用)

声明:本文转载于:learnku,如有侵犯,请联系admin@php.cn删除