本篇内容主要讲解”如何处理Laravel有关的一些错误”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习”如何处理Laravel有关的一些错误”吧!
<强>禁止全局csrf认证强>
在app/Http/Kernel.php中,美元中间件表示全局中间件,而美元routeMiddleware表示针对某个路由的中间件,所以只需要把csrf美元在中间件中注释掉,然后在美元routeMiddleware中添加& # 39;csrf # 39;=比;& # 39;应用中间件\ \ Http \ VerifyCsrfToken& # 39;
如果要在某个路由上使用就这样:
路线::集团((& # 39;中间件# 39;,=祝辞,& # 39;csrf # 39;],,函数(){,,//,csrf保护的接口 路线:才能得到(& # 39;/& # 39;,,& # 39;HomeController@index& # 39;); }
<>强处理上传文件强>
file 美元;=,输入:文件(& # 39;upload_file");//,获取上传文件对象 文件→美元isValid(),,,,,,,,,,//,检验文件是否有效 文件→美元getClientOriginalName();,,//,获取文件原名 文件→美元getFileName(),,,,,,,,//,获取上传后缓存的文件的名字 文件→美元getRealPath(),,,,,,,,//,获取缓存文件的绝对路径 文件→美元getClientOriginalExtension();//,获取上传文件的后缀 文件→美元getMimeType(),,,,,,,,//,获取上传文件的MIME类型 文件→美元getSize(),,,,,,,,,,//,获取上传文件的大小
<强>手动清理配置缓存强>
php artisan 配置:缓存
<>强插入数据的时候出现MassAssignmentException在Laravel错误
强>
需要给数据表设置可访问的字段,在模型里面
protected fillable 美元;=,数组(& # 39;字段1 & # 39;,,& # 39;字段2 & # 39;);
<强> php工匠db:种子出现[ReflectionException] Claxx XXXTableSeeder道斯不存在错误强>
这是因为新增加了文件但是作曲家没有感知到,需要先执行作曲家dump-autoload
定义/修改字段类型为时间戳时出现错误:“未知的列类型“时间戳”要求。"
按照(我怎么使学说支持时间戳列?)的做法,目前最简单的方式是直接用DB::声明()来写SQL语句
<强>文章数据的时候出现的有效载荷是无效的强>
我遇到这个情况是因为在做复杂的表单提交、直接提取X-XSRF-TOKEN的值,但是由于没有转移,导致后端标记揭秘失败
<强>保存模型的时候出现错误:失踪的论点2照亮\雄辩的\ \数据库模型::setAttribute ()
强>
一般是模型的几个属性没有设正确,检查这几个值递增/时间戳/primarykey/fillable
<强>队列出现无法初始化一个多/EXEC事务总连接
强>
升级到最新版laravel吧,然后将复述的扩展切换到phpredis, laravel5.3之前自带的predis不支持复述的哨兵,并且有些复述,操作强依赖于predis的事务操作,各种纠结,最后都不能成功,或者自己写类似的中间件
<强>类的Symfony \桥工厂\ PsrHttpMessage \ \ HttpFoundationFactory& # 39;没有找到强>
偶尔安装了某些个第三方库会出现这种幺蛾子,可以用这种方式解决作曲家需要symfony/psr-http-message-bridge
<强>更新表时出现AH00052:孩子pid 71退出信号段错误(11)强>
原因可能是没有设置主键而直接在该表上面更新数据,导致ORM不知道到底该更新谁。并且Laravel不支持复合主键(https://github.com/laravel/framework/issues/5517,作者不支持这种做法)。这种情况,要么给该表添加唯一主键,要么只能用,直接更新了。
<强>错误阅读时从服务器强>
Predis需要设置read_write_timeout=0或1者,特别是守护进程任务,最好设置不超时
<强> PHP致命错误:未捕获异常& # 39;ReflectionException& # 39;消息& # 39;类日志不存在# 39;/用户/freek/dev/laravel/供应商/laravel/框架/src/照明/集装箱/Container.php 强>
出现于5.2版本中,原因是。env文件中的配置的值,中间存在空格,如果中间有空格,需要将值用双引号包起来
<强>类env/类不存在请求不存在强>
通常出现在框架还未加载完成就报的错,但是在处理错误的时候却使用了env()()/请求这个功能,导致没有打印真实的错误。处理方式,一是不要使用应用程序()→环境(& # 39;…& # 39;),而是检查。env文件中是否有错误,例如包含空格的值,必须用双引号包围。我在自定义ExceptionHandler中遇到过几次
<强>给定的数据没有通过验证强>
认证出错却不知道具体错在哪里并且状态码是500,如果有用野狗API,那么注意请求不要继承使用说明\ \ Http基础\ FormRequest而应该是野狗\ API使用Http \ \ FormRequest