laravel5
$(document).ready(function() {
var text = $.cookie("XSRF-TOKEN");
$.ajaxSetup({
headers: {
'X-XSRF-TOKEN': $.cookie("XSRF-TOKEN"),
}
});
//Rest of your code here
});
在form表单里:
input type="hidden" name="_token" value="<?php echo csrf_token(); ?>">
该段代码等同于全局帮助函数csrf_field的输出:
<?php echo csrf_field(); ?>
在Blade模板引擎中还可以使用如下方式调用:
{!! csrf_field() !!}
并不是所有请求都需要避免CSRF攻击,比如去第三方API获取数据的请求。如何避开验证,如上述代码,如何让其不通过CSRF验证。Laravel的CSRF可以在中间件(app/Http/Middleware/VerifyCsrfToken.php)的$except数组中加入需要排除验证的URL
<?php namespace App\Http\Middleware; use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as BaseVerifier; class VerifyCsrfToken extends BaseVerifier { /** * 指定从 CSRF 验证中排除的URL * * @var array */ protected $except = [ 'testCsrf' ]; }
protected $except = [
'stripe/*',
];
posted on 2016-10-20 20:26 codeart007 阅读(126) 评论(0) 收藏 举报
浙公网安备 33010602011771号