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

下面由Laravel教程栏目给大家介绍Laravel忽略白名单和黑名单,希望对需要的朋友有所帮助!区别$fillable 白名单: 允许插入字段 默认为: []$guarded 黑名单: 不允许插入字段 默认为: [*] //所有字段

下面由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

过来也没用)

以上就是关于Laravel忽略白名单和黑名单的详细内容,更多请关注梦子博客其它相关文章!

本文由仗剑北下投稿,不代表梦子博客立场。如需转载,请注明出处:https://www.mongziit.com/8271.html

发表评论