我的代码是用angular的typescript语言写的。我正在建立一个项目必须与cloudDB。
我在mongodb atlas中有用户集群,并复制字符串node.js以通过应用程序连接,但我不知道在angular中在哪里编写我的mongoDB代码。
我看到了很多openSource,但有时它会损坏我的项目,然后我会修复它,或者开源代码只处理.js文件,我如何才能让我的项目将参数导出到我的DB集群。
所有文件均为.ts格式。
谢谢。请任何人都能提供帮助。
发布于 2021-03-21 18:39:34
您需要有一个与mongodb通信的后端服务器。这是因为允许你的angular应用程序直接与mongodb对话是不安全的。
我建议您结合使用
nest.js来编写你的api https://nestjs.com/,并使用NX将你的angular应用程序和api放在同一个repo中。https://nx.dev
nx非常适合构建你的应用程序和api,他们有很多关于如何编写代码的代码示例和最佳实践。
在过去的两年里,我一直在使用这个设置,我对它非常满意。
发布于 2021-03-21 20:17:59
有时,退一步看看在AWS VPC上部署的标准应用程序的简单架构图是什么样子是有意义的:
客户端获取托管在AWS VPC内的公共子网中的网站资源,并在其chrome浏览器中查看它,这意味着在客户端获取并使用angular代码,这与PHP等服务器端技术不同。每次angular需要在浏览器上显示远程数据时,它将与代理进行通信。代理将检查身份验证,证书,并路由到后端,如果检查是ok的话。
后端没有数据,但会从数据库中查询。出于安全原因,后端和数据库都托管在私有子网中,因为提供从internet到后端或数据库的直接访问对于生产应用程序来说从来都不是一个好主意。而像angular这样的客户端框架并不是为了直接从数据库获取数据而设计的,因为我想你已经看到了:full-stack,backend only和frontend only职位的工作描述:)
+------------------------------------------------+
| UserAgent (Web Browser) |
+------------+------------------------^----------+
| |
Route 53 | |
+-----------------------------------------------------+
s p | |
u u +-----------v----------+ +-----------+----------+
b b | Proxy | | Frontend |
n l +-----------+----------+ +----------------------+
e i |
t c | Api Gateway
+-----------------------------------------------------+
s p |
u r +-----------v----------+
b i | Backend |
n v +----------------------+
e i |
t t |
e +-----------v----------+
| Database |
+-----------+----------+
+-----------------------------------------------------+前端:
angular、react、vue等。后端:
Node,Java (Spring Boot),Python (Django),Ruby(Rails),PHP进行数据库迁移。
数据库
mongo
您也可以使用lambda和firebase进行无服务器计算,这始终是可能的,但我认为这一次不要跳得太远;)
https://stackoverflow.com/questions/66731248
复制相似问题