javascript - 除了 API 之外,我应该为前端/后端使用两个单独的项目还是将它们合并为一个?

标签 javascript node.js mongodb express vue.js

<分区>

我有几个问题,希望得到一些答案。

所以我用 express & mongo 创建了一个后端 Node 服务器,它在网络上运行特定的任务,并循环保存在数据库中。我还添加了一个带有 express & bootstrap 的管理页面。这很好用。当时我需要的是一个前端页面——为此我选择了 VueJS。出于多种原因,我单独开始了该项目。我觉得这会更容易上手,因为我之前没有任何前端框架经验,后端项目是用 typescript 编写的,我现在宁愿使用普通的 es6 JS。

现在 - 该站点已经取得了一些相当不错的进展,并且到了我需要与数据库建立连接并在后端项目中使用一些已经实现的功能的时候。

这就产生了问题:

  • 我应该创建新函数和/或创建和使用 API 吗?通过两个不同的进程访问和写入mongodb会不会有问题?如果我从现有的后端逻辑创建“公共(public)”api,是否会出现安全问题? (还没有写任何api。)

  • 或者我应该利用时间将前端项目导入后端(这意味着要么将 new 翻译成 typescript,要么切换到普通的 ES6 JS)?这是否存在安全风险,因为我不想在我的前端站点中使用后端逻辑。

我很感激任何对此的回答!

谢谢你:)

最佳答案

这是一个你能负担得起运行两台服务器的问题吗?考虑到所有微服务,将前端与后端分开实际上是一个很好的举措,因为它允许您为将来的目的单独扩展这些东西。就像你的后端需要更多的资源,一旦你开始迎合移动用户或者一旦你收到更多的 api 调用,而你的前端服务器只需要提供 ui 和 Assets ,仅此而已。虽然明显的缺点是成本增加,因为您确实需要运行两台服务器而不是一台,这在您刚开始时很难做到


我应该创建新函数和/或创建和使用 API 吗?

对于您的后端?是的。 API 是现在在网络空间中做事的方式,因为它可以证明你的 future ,并允许以更受控制和统一的方式访问你的后端(一切都通过 api)。因此,如果您的前端尚未通过 API 访问您的数据库,我建议您重构它们以这样做。

对于您对 mongo 的担忧,我很确定 mongo 已经具备避免死锁的功能。

关于 API 的安全性,我建议查看 JWT .


我是否应该利用时间将前端项目导入后端

如果您出于成本考虑而不是走这条路,为了统一起见,我建议重写一个代码库以与另一个代码库保持一致,尽管您可以在闲暇时这样做(我们不能让您浪费所有宝贵的时间来重写已经可以正常工作的代码)。这并不是一个真正的安全问题,因为后端代码没有被发送到前端供所有用户查看

关于javascript - 除了 API 之外,我应该为前端/后端使用两个单独的项目还是将它们合并为一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46834596/

相关文章:

javascript - 哪个 jQuery 代码更高效?

c# - 使用谷歌地图的地址验证器

node.js 读取文件问题

javascript - Node 返回错误 - "route is not defined"

php - fatal error : Cannot use object of type MongoCursor as array

javascript - 在预定义的 Mongoose 结构中连接多个数据库

mongodb - MongoDB 文档中 "Dynamic schema supports fluent polymorphism"的含义

javascript - Jquery 旋转不适用于类的多个实例

javascript - 子弹出窗口显示在父弹出窗口顶部

javascript - Lodash 从对象中过滤掉非法项目