学渣也要搞 laravel(2)—— HTTP路由[1]篇
前几天忙了,然后快两个星期没有发博客。今天正式回归。哈哈
1. 路由
说到路由当时学的时候给我疑惑了几天、。没有仔细看文档。然后一脸蒙蔽的去用 postman[谷歌插件] 测试路由方法。然后就很奇怪 composer 下载下来的 laravel 为什么在 postman 里面测试的只有 get 路由方法能使用,类似这样 :
laravel 的路由在app/Http/routes.php 这个文件(中文文档:点我)
在routes.php里面添加了一个get方法
Route::get('test',function(){ return '123'; });
然后在postman里面测试的时候能输出 123;
然后我再次添加post方法。发现在postman里面测试的时候会报错。
Route::post('/test',function(){ return 123; });
后来加了laravel学院的群问了下才知道,(laravel 5.2.26之后的所有路由默认走web中间件,所以没有token肯定访问不了) 通俗的说就是防止CSRF(跨站)攻击。如果想要用postman测试的话就要去关闭CSRF。要么就用表单测试避免攻击。我就用官方文档给的表单测试这些路由...
Route::get('test',function(){ $csrf_field = csrf_field(); $html = <<<GET <form method="POST" action="/test"> {$csrf_field} <input type="submit" value="test"/> </form> GET; return $html; }); Route::post('test',function(){ return 'Success'; });
这个就能在浏览器中看到了(忽略 标签 ,懒得打马了)
metch / any 路由都差不多。然后其他的几个路由我也就不去测试了。表单传递方式只有get和post了。如果想看其他路由的话。目前只知道--- 去关闭csrf 用postman看效果。 如何关闭上面的 csrf 链接有介绍。或者 app/Http/Kernel.php 注释掉第31行
\App\Http\Middleware\VerifyCsrfToken::class, //注释我
1.1. 路由参数
Route::get('posts/{post}/comments/{comment}', function ($postId, $commentId) { return $postId.$commentId; });
可选参数:
Route::get('posts/{post}/comments/{comment?}', function ($postId, $commentId=null) { return '$postId----'.$postId.' $commentId------'.$commentId; });
这个意思差不多就是以postId 接收{post}参数。然后可选参数comment 可以为空或者不为空。然后输出对应的参数:下面这个例子就是把这个可选的参数没有给他设置值。然后输出的时候就不会有参数出来。若设置了即反之。{post}不能设置为可选参数,如果设置了的话,便报错、因为它真的不知道 comments 后面的是不是值。
正则约束参数:
Route::get('user/{id}/{name}', function ($id, $name) { return $id.'---'.$name; })->where(['id' => '[0-9]+', 'name' => '[a-z]+']);
这个输入的参数 id 必须为数字。name 必须为 a-z 或者多个 a-z+ --- 即正则约束这俩参数。
输出:
部分内容参考:Laravel 5.2 中文文档
学渣也要搞 laravel(2)—— HTTP路由[1]篇的更多相关文章
- 学渣也要搞 laravel(1)—— 安装篇
看到laravel(我叫它:拉瓦)那么热门,我也决定学上一学. Laravel 5.2 在 5.1 基础上继续改进和优化,添加了许多新的功能特性:多认证驱动支持.隐式模型绑定.简化Eloquent 全 ...
- 学渣也要搞 laravel(4)—— 服务 加解密篇
使用 Crypt::encrypt() 对数据进行加密,[注意要引入 use Illuminate\Support\Facades\Crypt;; ] 简单的做个测试: 先分配一个路由: Route: ...
- 学渣也要搞 laravel(3)—— HTTP控制器
1. laravel 控制器在app/Http/Controllers/ 下,你会看到里面有一个Controller.php ,之后我们创建的控制器都是继承这个总控制器的.创建控制器只需要在这里面添加 ...
- [转]Laravel 4之路由
Laravel 4之路由 http://dingjiannan.com/2013/laravel-routing/ Laravel 4路由是一种支持RESTful的路由体系, 基于symfony2的R ...
- Laravel 深入理解路由和URL生成
原文地址: Laravel 深入理解路由和URL生成 在模板中我们一般不会直接写死url,而是用url助手生成url,本文介绍一下url助手的使用以及遇到的一些比较头疼的问题. 首先,我们创建了一个路 ...
- laravel基础课程---2、Laravel配置文件、路由及php artisan(php artisan是什么)
laravel基础课程---2.Laravel配置文件.路由及php artisan(php artisan是什么) 一.总结 一句话总结: PHP工具匠:php artisan,其实本身就是一些PH ...
- Laravel框架下路由的使用(源码解析)
本篇文章给大家带来的内容是关于Laravel框架下路由的使用(源码解析),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 前言 我的解析文章并非深层次多领域的解析攻略.但是参考着开发文 ...
- ROS2.9.27架设网吧软路由实战篇之端口映射与回流
转载:http://blog.csdn.net/zm2714/article/details/7924280 上一篇:ROS2.9.27架设网吧软路由实战篇之连通网络,主要讲述了网吧架设软路由ROS2 ...
- laravel强大功能路由初探(二)
目标当然是先输出helloworld 配置hosts文件和apache下的httpd-vhosts.conf, hosts:127.0.0.1 www.blog.com httpd-vhosts.c ...
随机推荐
- C语言宏与单井号(#)和双井号(##)
C(和C++)中的宏(Macro)属于编译器预处理的范畴,属于编译期概念(而非运行期概念).下面对常遇到的宏的使用问题做了简单总结.关于#和##在C语言的宏中,#的功能是将其后面的宏参数进行字符串化操 ...
- 你为什么学MSP430
很清楚,很明白,目的性极强,你学这个,是为了竞赛,学51也是,学习FPGA也是,你压根打心眼里就没打算走硬件方向,原因不多说,尽管你还是喜欢硬件的,但是,现实是,一个人的精力是有限的,你啊,好好弄好你 ...
- Spring实例化bean的三种方法
1.用构造器来实例化 <bean id="hello2" class="com.hsit.hello.impl.ENhello" /> 2.使用静态 ...
- hibernate关联关系映射详解
词汇解释 关系:事物之间相互作用.相互联系的状态.范围最大. 联系:在关系数据库中表示实体与实体之间的联系,1:1,1:n,m:n. 关联:表示对象之间的关系,既有数量性,又有方向性:动词:将对象之间 ...
- SAP ABAP 程序调用FORM
*&---------------------------------------------------------------------* *& Report ZHAIM_FOR ...
- C++访问sqlite3实践
Sqlite确实是一个比较好的本地数据库,从接触它的时候就喜欢上了它,它可以在很多情况下简化应用.不过以前都是在Java里面使用,或者Linux C下使用的,现在有个项目(C++)可能我会用到sqli ...
- 剖析@weakify 和 @strongify
前言 使用RAC的时候我们常会看到这两个宏@weakify(self).@strongify(self),用来防止使用block时出现引用闭环. 今天看YYKit的时候,看到里面也写了类似的宏,还是来 ...
- Elasticsearch .Net Client NEST使用说明 2.x
Elasticsearch .net client NEST使用说明 2.x Elasticsearch.Net与NEST是Elasticsearch为C#提供的一套客户端驱动,方便C#调用Elast ...
- javascript常用方法(慢慢整理)
获取类型:[object object],[object function],[object Undefined]等 Object.prototype.toString.apply(obj); 获取对 ...
- hp惠普服务器监控硬盘
惠普 hpssacli 工具使用 查看raid卡信息(包括控制器状态.Cache状态.电池状态) # hpssacli ctrl all show status 查看raid详细信息 # hpssac ...