首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Laravel -在路由中使用(一个get和一个post)而不是(资源,只使用索引和存储)是标准的吗?

Laravel是一种流行的PHP开发框架,它提供了一套简洁优雅的语法和丰富的功能,用于快速构建高效的Web应用程序。在Laravel中,路由是定义应用程序的URL和处理请求的地方。

在路由中使用GET和POST方法而不是资源(索引和存储)是一种常见的做法,但是否符合标准取决于具体的应用需求和设计。以下是对这种做法的一些解释和建议:

  1. 概念:GET和POST是HTTP协议中的两种常用请求方法。GET用于获取资源,而POST用于提交数据并创建资源。
  2. 分类:在Laravel中,路由可以分为两种类型:资源路由和自定义路由。资源路由提供了一组默认的CRUD操作,而自定义路由可以根据应用程序的需求进行灵活定义。
  3. 优势:使用GET和POST方法可以更好地遵循RESTful设计原则,使路由的语义更加清晰和直观。GET方法用于获取资源,POST方法用于提交数据,这样可以更好地区分不同的操作。
  4. 应用场景:在一些简单的应用场景中,使用GET和POST方法可以满足大部分需求。例如,一个简单的博客应用可能只需要使用GET方法获取文章列表和使用POST方法创建新的文章。
  5. 推荐的腾讯云相关产品:腾讯云提供了丰富的云计算产品和服务,可以帮助开发者构建高可用、安全、稳定的应用程序。以下是一些推荐的腾讯云产品和产品介绍链接地址:
  • 云服务器(CVM):提供弹性计算能力,支持快速部署和扩展应用程序。产品介绍链接
  • 云数据库MySQL版:提供高性能、可扩展的关系型数据库服务。产品介绍链接
  • 云存储COS:提供安全可靠的对象存储服务,用于存储和管理应用程序的静态文件和多媒体资源。产品介绍链接

请注意,以上推荐的腾讯云产品仅供参考,具体选择应根据实际需求和项目要求进行评估和决策。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Laravel 表单方法伪造与 CSRF 攻击防护

1、表单方法伪造 有时候,我们可能需要手动定义发送表单数据所使用 HTTP 请求方式, HTML 表单仅支持 GET POST 两种方式,如果要使用其他方式,则需要自己来定义实现。...对于 HTML 表单属性而言,有一个问题 HTML 表单仅支持 GET POST 请求,如果要使用其他请求方式怎么办?...表单请求方法伪造 要告知 Laravel 当前提交表单使用 GET/POST 之外其他请求方式,需要在表单添加一个名为 _method 隐藏字段,字段值「PUT」、「DELETE」或 「PATCH..."> Laravel 会将其看作 DELETE 请求,并将其匹配到对应 Route::delete 路由进行处理,不是 Route::post 路由。...当然,如果你 JavaScript 脚本执行 HTTP 请求,也可以很方便传递这个 Token 值执行写入操作,首先需要在 HTML 标签内新增一个 元素来存储 Token

8.7K40

Laravel系统3.3】控制器与表单验证

当然,正式 MVC 模型,视图可以直接模型交互,由此,也引申出了 MVP 模型,其中这个 P 就是强化控制器作用,让模型视图解耦。...之前路由时候也说过这个问题,但是 Laravel ,实现了路由控制器解耦,所以我们控制器可以随意定义并且命名,直接通过路由来进行绑定。...资源型控制器 在上篇路由文章中就讲过,我们可以定制一个资源路由,对应就是一个资源控制器,这俩货相辅相成。那么什么资源型呢?其实就是标准 RESTful 类型一套请求链接。...传递过来数据就是我们路由文件定义数据,也就是调 get()/post() 这些方法时候添加数据。...其二,错误信息会直接传到模板一个 $errors 变量,这个也不是我们控制,也是框架自动处理,这个地方也是我们平常在写业务代码时候需要注意,因为这个变量名写死框架内部,不能修改

8.6K20

Laravel 控制器:从 MVC 模式聊起

1、控制器概述 到目前为止,我们定义所有路由都是基于闭包函数实现,前面已经提到过,随着应用体量增长,不可能将所有路由都定义单个文件,且对于复杂业务逻辑,闭包函数也不足以支撑,所以其他 Web...提到依赖注入,就绕不开服务容器,关于服务容器后面我们会单独讲解,现在你只需了解服务容器一个绑定多个接口与具体服务实现类容器,依赖注入则是代码编写时以接口(或者叫做类型提示)方式作为参数,不必传入具体实现类...5、资源控制器 有时候在编写控制器时命名方法名称可能最困难,好在 Laravel 为常见 REST/CRUD 控制器( Laravel 称之为「资源控制器」)提供了一套约定规则,并为此提供了相应...首先,我们使用这个 Artisan 生成器来生成一个资源控制器(之前命名后加上 --resource 选项): php artisan make:controller PostController -...} destroy() post.desc 删除单个文章 绑定资源服务器 通过上面的表格已经了解了 Laravel 资源路由命名约定,Laravel 还为我们提供了一个 Route::resource

11.2K51

Laravel系列3.2】路由:指哪儿打哪儿

关于这种形式加载方式大家可以去看一下老这些框架如何实现。而在 Laravel ,从我开始接触时候,就使用自定义路由方式来指定请求路径。.../get/request/1 // http://laravel8/get/request/1/1 404 在这个路由中,我们指定了两个参数,一个 id 一个 name ,当使用 /get/request...name 参数后面的冒号表明这个参数一个可选参数, where 则指定了参数规则,比如 id 必须数字, name 必须小写 a 到 z 。...edit http://laravel8/temp/delete http://laravel8/temp/insert 就可以把这五个链接都放到 temp 这个资源路径下,一般这种类似的资源也会使用一个控制器...当然,如果一个控制器一个 RESTful 资源文件的话,直接使用 Route::resource() 去指向一个控制器就可以了,可以省略掉方法名,这种方式文档叫做 资源型控制器 。

11.7K10

Laravel推荐使用十个辅助函数

在这里,我将编写 10 个最好 laravel 帮助函数,用于使我开发更容易。 您必须考虑必要时使用它们。...这个 uuid 可以存储索引数据库列。 这些 uuid 基于时间戳创建,因此它们会保留你内容索引。...$url = route('products', ['id' = 1]); 如果你想产生一个相对 URL 不是一个绝对 URL,你可以传递 false 作为第三个参数。...如果你没有传递闭包,你也可以使用 User Model 任何方法。 无论实际返回方法如何,返回值都将始终为值。 在下面的例子,它将返回 User Model 不是布尔值。...如果传递对象为 null,则方法属性将返回 null,不是导致错误或抛出异常。 $user = User::find(1); return optional($user)- name;

3.7K20

这份PHP面试题总结得很好,值得学习

postget、put、delete就是对这个资源进行增、删、改、查操作!...3.1表单getpost提交方式区别 get把参数数据队列加到提交表单action属性所指url,值表单内各个字段一一对应, 从url可以看到;post通过HTTPPOST机制,将表单内各个字段与其内容防止...echo、printphp语句,var_dumpprint_r函数 echo 输出一个或多个字符串,中间以逗号隔开,没有返回值语言结构不是真正函数,因此不能作为表达式一部分使用 print...26、 简述MySQL数据库MyISAMInnoDB区别 区别于其他数据库最重要特点就是其插件式存储引擎。切记:存储引擎基于表不是数据库。...动态路由可以自动学习网络拓朴结构,并更新路由表。其 缺点路由广播更新信息将占据大量网络带宽。 31、使用过 Memcache 缓存,如果使用过,能够简单描述一下它工作原理

5K20

10个技巧优化PHP程序Laravel 5框架

路由缓存 路由缓存可以有效提高路由注册效率,大型应用程序效果越加明显,可以使用以下命令: php artisan route:cache 以上命令会生成 bootstrap/cache/routes.php...使用 Memcached 来存储会话 每一个 Laravel 请求,都会产生会话,修改会话存储方式能有效提高程序效率,会话配置信息 config/session.php,建议修改为 Memcached...数据库请求优化 数据关联模型读取时使用 延迟预加载 预加载 ; 使用 Laravel Debugbar 或者 Clockwork 留意每一个页面的总数据库请求数量; 这里篇幅写到与 Laravel...使用即时编译器 HHVM OpCache 都能轻轻松松让你应用程序不用做任何修改情况下,直接提高 50% 或者更高性能,PHPhub 之前做个一个实验,具体请见:使用 OpCache 提升...前端资源合并 作为优化标准一个页面只应该加载一个 CSS 一个 JS 文件,并且文件要能方便走 CDN,需要文件名随着修改变化。

5.3K20

为什么 Laravel 这么优秀?

比如你在上一次变更操作错误设置了某个表索引,那我理解正确做法不是回滚,而是创建一个迁移文件,并在新迁移文件 ALTER 之前修改。...API,通过这些 API 我们就能轻松注册一个符合行业标准 RSETful 风格路由,如我们为我们课程注册路由: Route::apiResource('courses', CourseController...container 设置不同值;如 CacheServiceProvider 会向容器中注册 Cache 对象,后续使用 Cache::get 时就使用这里注册 Cache 对象,注册阶段不应该向容器获取值...,完成开发时选择自己以及团队合适不是只会写 Java 就觉得其他语言啥都不是。...这里还有个例子 Laravel 之前推出了 Laravel Bootcamp 用来教新人怎么快速上手 Laravel,但这之前推出了两个版本,即 Livewire Inertia,好在被社区大佬及时反应后才再后来加上了最原始

15310

laravel实现简单用户权限示例代码

这里有两个方面的维度,谁,就是用户维度,在用户维度,权限管理粒度可以是用户一个人,也可以是将用户分组,如果将用户分组,则涉及到逻辑一个用户可以多个组里面?...接下来考虑如何laravel结合,既然要为每个路由设置访问权限,那么我当然希望能在laravelroute.php路由管理配置。...最好就是Route::get时候有个参数能设置permission。这样做好处权限设置简易了。决定路由时候,就顺手写了权限控制。坏处呢,也很明显,laravel路由三种方式只能写一种了。...’]; 存储成二维数组不是一维好处呢,一般后台展示有两个维度一个头部tab栏,一个左边nav栏,就是说这个二维数组后台tab,nav栏一一对应。...我将二维数组存储为json,利用laravelAttributegetset方法,完成了数据库json外界程序逻辑连接。

93420

路由使用进阶(二)

1、路由模型绑定 我们使用路由时候一个很常见使用场景就是根据资源 ID 查询资源信息: Route::get('task/{id}', function ($id) { $task = \...{task})来告知路由解析器需要从 Eloquent 记录根据给定资源 ID 去查询模型实例,并将查询结果作为参数传入不是资源 ID。...所谓频率限制,指的是指定时间单个用户对某个路由访问次数限制,该功能有两个使用场景,一个某些需要验证/认证页面限制用户失败尝试次数,提高系统安全性,另一个避免非正常用户(比如爬虫)对路由过度频繁访问... Laravel 该功能通过内置 throttle 中间件来实现,该中间件接收两个参数,第一个次数上限,第二个指定时间段(单位:分钟): Route::middleware('throttle...,但是需要付出代价不能使用任何闭包路由,此外,由于使用路由缓存需要在每次变动路由后重新生成缓存,所以建议应用部署脚本执行 php artisan route:cache(运行此命令之前先要清理之前缓存

8.5K40

基于 Redis + 资源库模式实现 Laravel 应用缓存功能

app 目录下新建 Repos 子目录存放资源库类,然后该目录下新建一个Post 模型类对应 PostRepo 资源库类: <?...Laravel 提供了封装 Redis 存储独立缓存组件,不过这里为了方便大家了解底层实现原理,我们先使用原生 Redis 实现对文章详情数据排行榜数据缓存。...正如前面所说,现在我们可以资源库 PostRepo 这一层对数据库查询结果进行缓存,不需要调整任何控制器代码。...你可以到 Redis 命令行客户端去查看对应缓存数据: 使用 Laravel 自带缓存组件 当然, Laravel 项目中,如果使用 Redis 作为缓存存储器的话,推荐使用自带缓存组件,配置好...连接实例上 get setex 方法获取设置缓存,如果缓存项对象的话,还会进行序列化反序列化操作。

2.5K10

Laravel API教程:如何构建和测试RESTful API

我们将使用HTTP动词语义: GET:检索资源 POST:创建资源 PUT:更新资源 DELETE:删除资源 ?...您可以将资源表示多个数据模型(或根本不在数据库中表示),并且模型完全不受用户限制。最后,您将以适合您应用程序方式来决定如何构建资源模型。...有些端点是非常明确,而且,作为一个结果,你API将更加易于使用维护,不是这样端点例如GET /get_article?id_article=12POST /delete_article?...您可以使用许多外部工具来测试您API; 然而,Laravel内部测试一个更好选择 - 我们可以拥有测试API结构结果所有好处,同时保留对数据库完全控制。...我建议您在开始获取迁移错误时,测试离开SQLite,或者您希望使用更强大测试,不是执行运行。 我们还将在每次测试之前运行migrations 。

20.2K20

3分钟短文:Laravel控制器用法光速入门

引言 上一章我们介绍了laravel路由注册“花拳绣腿”,样样都是那么优雅实用。路由传递过来参数,经过中间件验证导向之后,应该去控制器接受处理了。...本文用最简单示例,让你明白laravel控制器干什么,以及怎么用。...,其实都包含在了laravel提供资源路由之内,我们创建一个资源路由相关控制器,并初始化框架代码,可以使用命令实现: php artisan make:controller TaskController...要查看系统内所有已注册路由,可以使用下面的指令: php artisan route:list 写在最后 本文浅显地介绍了laravel控制器使用,最重要,resource路由方法默认骨架代码...,为我们统一写作api接口提供了标准团队协作尤其重要。

1.5K10

通过 Request 对象实例获取用户请求数据

作为最流行 PHP 框架,Laravel 自然也是为处理用户请求提供了丰富工具集,从收集、验证、到过滤、编排,可谓一应俱全,接下来,我们将通过三四篇教程篇幅来为你详细介绍如何在 Laravel...攻击防护验证导致请求失败: protected $except = [ '/form*' ]; 然后我们 Postman 模拟发起对 /form 路由请求,同时 URL 请求表单传入请求数据...可见,不管 URL 路径 GET 请求数据,还是表单 POST 请求数据,$request->all() 都可以获取到。...获取部分请求数据 如果只想获取部分请求数据,可以通过 $request 实例上 except 或 only 方法,这两个方法相反一个用于排除指定字段,一个用于获取指定字段: $request-...获取指定请求字段值 上面我们已经给出了获取指定字段值一个方法 get,该方法只能获取通过 GET 请求传递参数,同理,如果 POST 请求的话,我们可以通过 post 方法获取对应字段值,此次之外

19.7K30

3分钟短文:Laravel控制器用法光速入门

引言 上一章我们介绍了laravel路由注册“花拳绣腿”,样样都是那么优雅实用。路由传递过来参数,经过中间件验证导向之后,应该去控制器接受处理了。...本文用最简单示例,让你明白laravel控制器干什么,以及怎么用。...,其实都包含在了laravel提供资源路由之内,我们创建一个资源路由相关控制器,并初始化框架代码,可以使用命令实现: php artisan make:controller TaskController...要查看系统内所有已注册路由,可以使用下面的指令: php artisan route:list 写在最后 本文浅显地介绍了laravel控制器使用,最重要,resource路由方法默认骨架代码...,为我们统一写作api接口提供了标准团队协作尤其重要。

1.8K11

Laravel框架_php laravel框架

Http下类文件,比如上面目录User.php、Menu.php文件应用模型文件;   config目录所有应用配置文件目录;   public框架入口文件及静态资源文件目录;   ...三、laravel目录结构整体分析 四、laravel路由 (一):简介 laravel,定义路由地方routes/web.php文件。...使用laravel前必须先定义路由,然后才能在浏览器访问。routes文件夹还有一个api.php,用于定义api路径。...路由就是用户地址栏里面输入一个url地址后,交给后端那个控制器下那个方法进行处理规则。一般我们需要在专门路由文件里面,进行定义好。...laravel请求类型包括:getpost、put、patch、delete。 1、基本路由 get请求: <?

3.6K20

初中级PHP面试基础汇总

方法 – 某个方法或输出之前执行或之后执行,用于修饰 迭代器模式 提供一个方法顺序访问一个聚合对象各个元素,PHP中将继承 Iterator 类 – yield POSTGET有什么区别 GET...从服务器上获取数据,POST向服务器传送数据 GET通过发送HTTP协议通过URl参数传递进行接收,POST实体数据,通过表单提交 GET传送数据量较小,不能大于2KB。...GET安全性非常低,POST安全性较高 session与cookie区别 session存储服务器上php指定目录(session_dir)位置 cookie存储客户端 数据库事务是什么...Redis 提供了事务功能,可以保证一系列命令原子性 Redis 支持数据持久化,可以将内存数据保持磁盘 Redis 使用单核, Memcached 可以使用多核,所以平均每一个核上...服务提供者所有Laravel应用程序引导启动中心,Laravel核心服务器、注册服务、绑定服务、监听器、中间件、路由注册以及我们应用程序都是由服务提供者引导启动。 IOC容器是什么?

1.3K10

JSON Web Token(JWT)教程:一个基于LaravelAngularJS例子

什么 JSON WEB TOKEN(JWT) JSON Web TOKEN(JWT)通过发送数字签名进行验证信任信息一种规范,一个开放标准( RFC 7519 )。...基于token认证无状态,因此不需要在会话存储用户信息。这使我们能够扩展我们应用程序,不必担心用户登录位置。我们可以轻松地使用相同token从除了我们登录域之外域中获取安全资源。...如果我们使用负载均衡配置,我们可以将用户传递给任何服务器,不是仅被绑定在我们登陆那台服务器上。...这个例子,我们将使用 tymon/jwt-auth,一个由Sean Tymon开发用于服务端处理tokenbarryvdh/laravel-cors,一个由 Barry vd....这是我们拦截器一个例子,它们浏览器本地存储可用时注入一个token。

30.5K10

Laravel 开发 RESTful API 一些心得

,1.0 快要来了,新版本文档也很清晰 刚用jwt-auth时有疑问,Laravel自带token验证使用数据库api_token字段验证,不见jwt-auth需要这个 然后想自己看源码,结果...QAQ 最后去问了官方 >_< 原来用户信息已经存储token中加密 一开始有疑问,这样保存,不会被解密(真为自己智商担忧 !...laravel划线(-),因为谷歌收录时,按划线划分关键字,国内按下划线(_)收录,具体看自己了,我喜欢下划线 >_< 更多看这里: 路由命名规范 表单验证 可以使用控制器自带表单验证...在有不确定是否输出关联数据时,这是一个很有用功能!!! 响应输出 当时 laravel-china 看到这个帖子,然后觉得这个方式不错,所以自己也这样子,使用基类方法统一响应输出。...NotFoundHttpException404路由找不到异常,没什么好说了 MethodNotAllowedHttpException这个方法不对应,比如你get路由,却post请求 文档

30410
领券