标签:
安装的说明请看文档, laravel 安装
你将在 app/Http/routes.php 文件定义大部分路由, 这些路由将被App\Providers\RouteServiceProvider
类所装载. 最基本的laravel路由仅仅包含一个URI和 闭包。
Route::get(‘/‘, function () {
return ‘Hello World‘;
});
Route::post(‘foo/bar‘, function () {
return ‘Hello World‘;
});
Route::put(‘foo/bar‘, function () {
//
});
Route::delete(‘foo/bar‘, function () {
//
});
有时候要注册一个路由给多个HTTP请求方法,需要用到 Route facade 的 match 方法
Route::match([‘get‘, ‘post‘], ‘/‘, function () {
return ‘Hello World‘;
});
Route::any(‘foo‘, function () {
return ‘Hello World‘;
});
$url = url(‘foo‘);
<input type="hidden" name="_token" value="<?php echo csrf_token(); ?>">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
除了寻找 CSRF token 作为「POST」参数,中间件也检查 X-XSRF-TOKEN
请求头,比如,你可以把 token 存放在 meta 标签中, 然后使用 jQuery 将它加入到所有的请求头中:
<meta name="csrf-token" content="{{ csrf_token() }}" />
$.ajaxSetup({
headers: {
‘X-CSRF-TOKEN‘: $(‘meta[name="csrf-token"]‘).attr(‘content‘)
}
});
现在所有的 AJAX 请求会自动加入 CSRF token:
$.ajax({
url: "/foo/bar",
})
Laravel 也在 cookie 中存放了名为 XSRF-TOKEN
的 CSRF token。你可以使用这个 cookie 值来设置 X-XSRF-TOKEN
请求头。一些 Javascript 框架,比如 Angular ,会自动设置这个值。
注意:
X-CSRF-TOKEN
和X-XSRF-TOKEN
的不同点在于前者使用的是纯文本而后者是一个加密的值,因为在 Laravel 中 cookies 始终是被加密过的。如果你使用csrf_token()
函数来作为 token 的值, 你需要设置X-CSRF-TOKEN
请求头。
标签:
原文地址:http://www.cnblogs.com/grkin/p/4606022.html