您好,欢迎访问一九零五行业门户网

laravel框架中TokenMismatchException的异常处理内容

laravel框架下,有时在使用post或者put等方法请求时,有时会报tokenmismatchexception in verifycsrftoken.php line 67错误。原因是laravel默认开启了防csrf。
要解决该问题有两种方式,一种是在请求时将token值也提交过去,另一种是在防csrf时排除所请求的路由
方法一:将token值传递过去
表单提交时:
<form action="photo/12" method="post"> <?php echo method_field('put'); ?> <?php echo csrf_field(); ?> <input type="submit" name="提交" /> </form>
使用ajax请求时:
<meta name="csrf-token" content="{{ csrf_token() }}">$.ajaxsetup({ headers: { 'x-csrf-token': $('meta[name="csrf-token"]').attr('content') }});
方法二:从 csrf 保护中排除指定 url
比如所访问的url为http://laravel.com/photo/12,现在想排除关于photo资源的路由,则在app\http\middleware\verifycsrftoken::class中添加路由如下:
protected $except = [ 'photo', 'photo/*', ];
注意,方法二将无法对photo相关路由进行csrf防护,所以请根据实际情况选择
以上就是本篇文章的全部内容了,更多laravel内容请关注laravel框架入门教程。
相关文章推荐: 
laravel框架中外观模式的深入解析
laravel5.4框架中vue.js实现ajax的表单提交错误验证
相关视频推荐:
2017年最新的五个laravel视频教程推荐
以上就是laravel框架中tokenmismatchexception的异常处理内容的详细内容。
其它类似信息

推荐信息