多多读书
582 字
3 分钟
兜了一大圈,Next.js 14又带我们回到了十年前

昨天,Next.js 14 发布了,其中最引人注目的特性是 Server Actions,它允许在前端使用 SQL 语句直接操作数据库。这一特性在前端界引发了热烈的讨论,有人认为它是一种创新的尝试,有人则认为它是一种倒退的做法。

看到这样的代码,不禁让人想起十多年前前后端未分离的时代,当时使用 PHP、JAVA 等语言开发 Web 应用时,经常会在 HTML 页面中嵌入服务端的语法,这样的代码难以维护和扩展。

在早期的 Web 开发中,前后端的职责通常是混合在一起的,即通过服务端渲染模板生成 HTML 页面,然后将其发送给客户端浏览器进行展示。

随着 Ajax 技术的出现,前端可以通过异步请求与后端进行数据交互,实现页面局部刷新,这为前后端分离奠定了基础。然而,由于前端技术的限制,前后端分离并没有得到广泛应用。

随着 Web 技术的发展,前端技术变得越来越强大,出现了一些前端框架(如 AngularJS、React、Vue.js 等),使得前端能够承担更多的业务逻辑,于是前后端分离逐渐成为一种流行的开发模式。

如今又要在前端写 SQL 语句,这是否意味着前后端分离的终结?这个问题没有简单的答案。Server Actions 的设计者认为,这样做可以简化开发流程,减少网络请求和数据转换的开销。他们还提供了一些安全措施,如使用参数化查询防止 SQL 注入攻击。但是,这样做也有一些潜在的风险和挑战,比如如何保证数据库的性能和稳定性,如何处理复杂的业务逻辑和事务,如何避免泄露敏感数据等。

总之,在前端使用 SQL 语句是一种有利有弊的做法,它可能适合一些简单的场景,但不一定适用于所有的应用。作为开发者,我们应该根据自己的需求和情况,选择合适的技术方案,并注意遵循最佳实践和安全规范。

兜了一大圈,Next.js 14又带我们回到了十年前
https://fuwari.vercel.app/posts/20231027/
作者
我也困了
发布于
2023-10-27
许可协议
CC BY-NC-SA 4.0