【问题标题】:Do Laravel and Vue always use RESTful APIs to communicate?Laravel 和 Vue 是否总是使用 RESTful API 进行通信?
【发布时间】:2020-05-26 14:50:43
【问题描述】:

在编码了几年之后,我使用软件所有者提供的 API 文档在我正在编码的应用程序中实现了许多不同的软件服务。而且我认为这就是我需要了解的所有关于 API 的内容,这只是使软件服务相互通信的一种方式。

但是现在我有一个创建应用程序的任务,我不会详细说明,但假设它只需要实现 CRUD 操作,并且它应该在前面使用 Vue,在后面使用 Laravel。在任务的解释中提到我应该使用 REST API 来触发这些操作。这就是让我感到困惑的部分!

由于我从来没有从头开始创建过应用程序,所以我只从事已经稳定的应用程序、修复错误和实现新功能(我想这就是大多数在大公司工作的人的样子今天),这就是为什么我认为这两个框架(Vue 和 Laravel)已经实现了 REST API,因为它们可以相互通信。

为什么特别要求我使用 REST API 来触发这些操作? 除了使用 API 使前端与后端通信(即使我已经在使用框架)之外,还有其他方法吗?如果不是,他们是否希望我创建用于通信的 REST API,而不是使用框架已经提供的 API?我很困惑,为什么他们提到使用 REST API,就好像它不是默认选项一样,甚至不应该有问题,只是一种预期的行为。

【问题讨论】:

  • 原谅我,但这听起来有点像你想太多了(以一种很好的方式)。开箱即用,Laravel 提供了创建具有各种帮助程序和默认功能的 RESTful api 的能力,但是,IMO,有很多人实际上并没有遵循这些做法。使用 Laravel,您无需遵循 REST 即可使框架正常工作。您可能被专门要求创建 RESTful api 的原因之一只是为了明确。
  • 让我说清楚,看看我是否理解你的意思。即使他们提到了这一点,这也没什么大不了的。我应该像往常一样制作那个应用程序,让它工作,将需要的内容保存到数据库中并从数据库中读取,就是这样,没有隐藏的意图。这意味着发送 POST 和 GET 请求,并在后面的 Controller 中处理它们。该应用程序并不像我在这里描述的那么简单,我基本上需要创建 RisiKo 策略棋盘游戏(不确定你是否知道那是什么),但由于这不是本主题的重点,我没有在其中描述它问题。
  • 这款手表值得一看:youtube.com/watch?v=MF0jFKvS4SI
  • @Rwd 非常感谢。我对这个话题仍然有点不安全,因为我最近刚毕业并且专业工作了两年半。我会看这个视频,再次感谢

标签: laravel rest api vue.js


【解决方案1】:

FOA,差距不会“尽快”填补,因为它需要您缺少的领域知识。是的,RESTful API 是最好的方式,除非您想要跨多个平台进行多维通信。

【讨论】:

  • 同意,但即使没有这些知识,我仍然觉得我能够做很多事情,并且我可以在不学习这些基础知识的情况下继续我的职业发展。但就是感觉不对劲!最近我有一个任务来实现 DocuSign 和 DigitalOcean,我公司正在分发的应用程序不是一个小应用程序,在已经存在的许多不同流程中实现它非常复杂。我做到了,说实话,在文档的帮助下,但仍然如此!我只是想弄清楚我在说什么,我不是在吹牛。我真的需要帮助才能理解上述内容。
【解决方案2】:

他们为什么提到使用 REST API,就好像它不是默认选项一样

多年来,在后端为 JS 前端消费提供 API 并不是默认选项。传统的“往返”应用程序使用一个表单提交到服务器并刷新整个页面,我敢猜测当今大多数 Web 应用程序仍然可以这样工作。

随着 Vue、React、Angular 等的出现,人们期望通过 AJAX 操作中的 API 来获取数据和发送数据。这给应用程序带来了更无缝的感觉,而且速度更快,因为只需要发送或接收相对少量的数据。

在小型 Laravel/Vue 应用程序中,前端和后端通常位于同一个 repo 中,并作为一个单元部署在一起。然而,随着应用程序的规模和复杂性的增加,将这些部分拆分为微服务是有价值的,这些微服务可以单独部署,而不需要复杂的系统依赖项使部署管道和签核过程复杂化。使用 API 非常适合这种方法。

确实,随着后端的增加,API 不再是一项服务,而是多项服务,按流程区域(例如用户、注册、结帐、仪表板等)划分。

Laravel 和 Vue 是否总是使用... API 进行通信?

因此,要回答您的主要问题,您不必将 API/AJAX 与 Vue 和 Laravel 一起使用。如果需要,您仍然可以使用标准 HTTP 表单并重新绘制整个屏幕。

Laravel 和 Vue 是否总是使用 RESTful API 进行通信? [我的重点]

另一种解释这个问题的方式是,您可能从某个人那里收到了指示,该人将 REST API 与不同类型的 API 区分开来。在网络上,GraphQL 变得越来越流行。服务器到服务器,SOAP (XML) 曾经非常普遍,并且仍在许多企业中使用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多