laravel路由文件在哪个目录里

2022-05-15 0 850

laravel路由文件在“routes”目录里。Laravel中所有的路由文件定义在routes目录下,它里面的内容会自动被框架加载;该目录下默认有四个路由文件用于给不同的入口使用:web.php、api.php、console.php等。

laravel路由文件在哪个目录里

本教程操作环境:windows7系统、Laravel6版,DELL G3电脑。

在 Laravel 中要简单地定义一个路由非常方便,传递一个 URI 和闭包即可。

Route::get('foo', function () {    return 'Hello World';})

Laravel 中所有的路由定义在 routes 目录下,这个目录下的内容会自动被框架加载。 routes 目录中默认有四个路由文件用于给不同的入口使用:web.php、api.php、 console.php 和 channels.php。

web.php 文件包含的路由都位于 RouteServiceProvider 所定义的 web 中间件组约束之内,因而支持 Session、CSRF 保护以及 Cookie 加密功能,如果应用无需提供无状态的、RESTful 风格的 API,那么路由基本上都要定义在 web.php 文件中。

api.php 文件包含的路由位于 api 中间件组约束之内,支持频率限制功能,这些路由是无状态的,所以请求通过这些路由进入应用需要通过 token 进行认证并且不能访问 Session 状态。

console.php 文件用于定义所有基于闭包的控制台命令,每个闭包都被绑定到一个控制台命令并且允许与命令行 IO 方法进行交互,尽管这个文件并不定义 HTTP 路由,但是它定义了基于控制台的应用入口(路由)。

channels.php 文件用于注册应用支持的所有事件广播频道。

许多项目,基本上都是以 routes/web.php 为起点进行开发的,它能实现快速开发一个项目的需要。在 routes/web.php 中定义的路由在浏览器中是可以直接访问到的。例如,在浏览器中输入 http://your-app.dev/user 地址来访问下面的路由:

Route::get('/user', 'UsersController@index');

定义在 routes/api.php 中的路由被嵌套在了一个路由组里,这是在 RouteServiceProvider 中设定的。这个组里的路由都使用了 /api 这个 URI 前缀,这样在你定义路由的时候,就不必再手动添加这个前缀了。如果你不想使用 /api 这个前缀的话,那么可以在 RouteServiceProvider 中修改。

/** * Define the "api" routes for the application. * * These routes are typically stateless. * * @return void */protected function mapApiRoutes(){    Route::prefix('api')         ->middleware('api')         ->namespace($this->namespace)         ->group(base_path('routes/api.php'));}

可用的路由方法

每一个 HTTP 请求类型都有对应的路由方法可供使用:

Route::get($uri, $callback);Route::post($uri, $callback);Route::put($uri, $callback);Route::patch($uri, $callback);Route::delete($uri, $callback);Route::options($uri, $callback);

有时一个路由需要能够匹配多个请求类型,这时可以用 match 方法。

Route::match(['get', 'post'], '/', function () {    //});

如果希望一个路由能够匹配所有请求类型的话,使用 any 方法:

Route::any('foo', function () {    //});

CSRF 保护

使用 Route::post、Route::put、Route::patch 和 Route::delete 定义的路由,要求访问它们的 HTML 表单都要传递一个 CSRF token,否则请求会被拒绝。你可以在 CSRF 文档里阅读更多这方面的内容。

<form method="POST" action="/profile">    {{ csrf_field() }}    ...</form>

重定向路由

如果你要将一个路由重定向到另一个路由,可以使用 Route::redirect 方法。这就节省定义一个完整路由或者控制器来操作简单的重定向带来的一些麻烦:

Route::redirect('/here', '/there', 301);

视图路由

如果你只是要简单返回一个视图,可以使用 Route::view 方法,类似 Route::redirect 方法,也节省了一些麻烦。view 方法的第一个参数是 URI,第二个参数是视图名。另外,也可以使用可选的第三个数组类型参数向视图传递数据:

Route::view('/welcome', 'welcome');Route::view('/welcome', 'welcome', ['name' => 'Taylor']);

【相关推荐:laravel视频教程】

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

【声明:根据2013年1月30日《计算机软件保护条例》2次修订第17条规定: 为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存 储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬! 鉴于此,也希望大家按此说明研究软件!】
本站所有源码尽量保证原汁原味,如有特殊情况会作出声明及标注,网站资源不做任何二次加密(原版加密除外,不影响程序使用的不会做解密处理),方便您更好的学习参考。 在您的能力范围内,为了大环境的良性发展,请尽可能的选择正版资源。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

即刻码站__国内靠谱的站长资源下载平台 php教程 laravel路由文件在哪个目录里 https://www.jike1995.com/36932.html

常见问题
  • 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度
查看详情

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务