码迷,mamicode.com
首页 > 其他好文 > 详细

Laravel5.1 学习笔记2, 路由

时间:2015-06-28 21:30:26      阅读:228      评论:0      收藏:0      [点我收藏+]

标签:

安装的说明请看文档, 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‘;
});
甚或注册一个路由响应所有HTTP请求,使用 any 方法
Route::any(‘foo‘, function () {
return ‘Hello World‘;
});
通常情况下,你将会需要为你的路由生成URL, 你可以使用 url 辅助函数来操作
$url = url(‘foo‘);
 

#路由参数 

    #必要参数 Required Parameters

    #可选参数 Optional Parameters

    #正则表达式限制 Regular Expression Constraints

#命名路由

#路由群组


#CSRF保护

Laravel 提供简易方法,可以保护你的应用程序不受CSRF(跨网站请求伪造)攻击。 跨网站请求伪造是一种恶意攻击, 借以代表经过身份验证的用户执行未经授权的命令。
 
Laravel会自动在在每一位用户的session中放置随机的 token  这个token将被用来确保经过验证的用户是实际发出请求至应用程序的用户。
 

插入CSRF Token到表单

<input type="hidden" name="_token" value="<?php echo csrf_token(); ?>">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
上面下一行是在Blade 模板引擎的写法
你不需要手动验证POST, PUT, DELETE请求的CSRF token。 VerifyCsrfToken HTTP中间件 将保存在Session中的和请求输入的token配对来验证token。
 
X-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",
})

X-XSRF-TOKEN

Laravel 也在 cookie 中存放了名为 XSRF-TOKEN 的 CSRF token。你可以使用这个 cookie 值来设置 X-XSRF-TOKEN 请求头。一些 Javascript 框架,比如 Angular ,会自动设置这个值。

注意: X-CSRF-TOKENX-XSRF-TOKEN 的不同点在于前者使用的是纯文本而后者是一个加密的值,因为在 Laravel 中 cookies 始终是被加密过的。如果你使用 csrf_token() 函数来作为 token 的值, 你需要设置 X-CSRF-TOKEN 请求头。

 

 



 

Laravel5.1 学习笔记2, 路由

标签:

原文地址:http://www.cnblogs.com/grkin/p/4606022.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!