Rumah >rangka kerja php >Laravel >关于Laravel忽略白名单和黑名单

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

藏色散人
藏色散人ke hadapan
2020-07-25 13:16:233834semak imbas

下面由Laravel教程栏目给大家介绍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过来也没用)

Atas ialah kandungan terperinci 关于Laravel忽略白名单和黑名单. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:learnku.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam