nextjs适合前后端分离的架构吗?
刚学nextjs 有个疑问 nextjs适合前后端分离的架构吗,我看官网和一些教程都提倡直接在服务端组件里操作数据库。如果已经有了写好的api服务,可以直接在服务端组件里去用axios请求api服务吗
Next.js适合前后端分离的架构。Next.js允许开发者使用服务端组件进行数据库操作,这并不意味着它不适合前后端分离的架构。实际上,Next.js的灵活性和强大的功能使得它可以在各种架构中发挥作用,包括前后端分离的架构。
如果你已经有了写好的API服务,你可以在Next.js的服务端组件中使用诸如axios这样的HTTP客户端库来请求这些API服务。这样做可以保持前后端的清晰分离,同时充分利用Next.js的服务端渲染能力。
需要注意的是,虽然Next.js支持服务端组件操作数据库,但这并不意味着你必须这样做。你可以根据自己的项目需求和团队技能选择最适合的数据库操作方式。前后端分离的架构强调的是前后端的独立性和可维护性,而Next.js通过其独特的功能和工具集可以帮助你实现这一目标。
可以,提倡直接在服务端组件里操作数据库,更准确地说法是提倡在服务器端组件里执行 Fetching data 操作,Fetching data 可以通过写好的 api 服务来获取,也可以像 roter handler 等其他的方式来获取数据。而这种提倡是相对那种 SPA 应用来对比的,普通的 SPA 应用会把数据获取推迟到客户端解析 js 才去获取数据,而通过服务端组件可以提前获取到数据直接下发到客户端。
3 回答1.8k 阅读✓ 已解决
1 回答1.6k 阅读✓ 已解决
4 回答1.6k 阅读✓ 已解决
2 回答2.4k 阅读✓ 已解决
1 回答2.5k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
如果已经有开发好的API了,直接调用开发好的API就好了呀。👉 Data Fetching: Fetching, Caching, and Revalidating | Next.js。没有使用过
NextJS
但是我的理解应该也是可以像类似的NuxtJS
这样去使用,框架部分只做预请求、SSR和缓存。使用
NextJS
这种全栈框架并不是说一定就要在启动的NextJS
服务里面去操作数据库。最佳实践也是推荐在服务端组件中把必要的数据请求好,减少客户端和服务器之间的来回通信。也避免一些敏感信息暴露到客户端中。并不是说要通过Next
去直连数据库来操作数据。