gpt4 book ai didi

laravel - 我应该使用 psr-7 来处理 laravel 请求/响应吗?

转载 作者:行者123 更新时间:2023-12-02 18:42:49 25 4
gpt4 key购买 nike

我一直在使用 slim 3,最后开始了解 psr-7。现在使用 laravel i see that out of the box, psr-7 is not supported .

现在...有充分的理由遵循 psr-7 或 laravel 请求样式吗?

例如,个人偏好并不是一个强有力的理由。

我只是不想用 laravel 请求类来编写整个应用程序,即 Illuminate\Http\Request 只是为了在一年后发现我真的应该遵循 psr-7 标准.

最佳答案

简短回答:

长答案:

考虑 PSR(PHP 标准建议)的目的,以及您选择的框架的每个方面都遵循这些标准对您来说意味着什么。

Laravel 不支持开箱即用的 PSR-7,因为 Symfony Component其请求/响应系统所构建的系统也不符合 PSR-7。事实上,这个组件经常出现在许多框架的核心,并且是在 PSR 思想流行之前编写的。

为了使 Laravel - 或依赖于该组件的任何其他框架 - 兼容 PSR-7,它必须将对 Symfony HTTP Foundation 组件的依赖关系更改为其他组件,甚至可能推出自己的实现。

请记住,所有 PSR 建议都只是:建议。

这些都不是必需的。

它们的唯一目的是帮助将 PHP 编写统一为更可预测的格式,以便所有至少熟悉这些标准的 PHP 开发人员能够遵循并更轻松地理解每个符合的代码库。

没有令人信服的理由重构任何具有合理复杂性的代码库或框架以使其符合 PSR

正如您自己所说,个人偏好并不是彻底修改代码库的足够理由。

对于您的用例,您需要问问自己,与不兼容的框架相比,符合 PSR-7 的框架将为您带来什么好处。问题不在于可维护性,因为符合 PSR 的代码的可维护性并不比不合规的代码更高或更低。

如果您正在编写一个需要完全控制请求/响应生命周期的 API,那么也许最好使用 Slim 这样的 PSR-7 兼容框架。如果您正在编写一个通用应用程序,其中您唯一关心的请求和响应是一些 AJAX 和 JSON 路由,那么您可能适合 Laravel 或 Lumen。

不要过多关注给定的框架是否符合图。只需进行研究,并确保您选择的工具集最适合您的需求。

关于laravel - 我应该使用 psr-7 来处理 laravel 请求/响应吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38964552/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com