我正在开发我自己的网站.到目前为止,我已经为前端使用了Reaction,为后端使用了Flask.我做前端开发已经有一段时间了,但我才刚刚开始进入后端.

根据我有限的理解,像FlaskJS和ExpressJS这样的框架创建了它们自己的服务器和托管数据,供前端使用.在我看来,他们似乎会自动创建网站来托管和接收数据.在我的网站中,我将后端发送到我想做的事情,并使用FETCH请求与POST和GET从前端进行通信.

尽管它奏效了,但在我看来,它似乎过于复杂.为什么后端需要自己的服务器?似乎没有必要为前端创建代理并获取数据.为什么一个网站不能在后台运行自定义代码,为什么它需要像FlaskTM或ExpressJS这样的服务来在后台运行?这些后端框架在后台运行Python或NodeJS,但如果网站本身可以在后台运行Python或NodeJS,不是会更简单吗?

我还看到,在像Reaction这样的框架中,您可以导入东西并使用模块--就像在NodeJS中一样.虽然导入一些模块可以工作,但不允许使用关键字require,并且正常的NodeJS代码将无法工作.因此,后端将无法工作.为什么--为什么不能直接在本地运行后端代码呢?相反,您必须通过Fetch和指定Header来将信息从前端转换到后端.

请原谅我对Web开发的业余理解,但对我来说,前端/后端系统似乎太复杂了.先谢谢你.

推荐答案

为什么后端需要自己的服务器?

客户端将在哪里存储数据,以便当您再次打开页面时,数据仍在那里?您可以使用localStorage,但这是锁定到该特定浏览器的.如果有人登录到不同的设备或使用不同的浏览器怎么办?

客户端首先将从哪里获得应用程序?您的应用程序需要以一种易于下载的形式打包,并且需要一个从中加载的地址.即使你使用的是像GitHub Pages这样的静态托管服务,这也都被认为是"后端".

后端存在并需要自己的服务器的原因有很多.任何期望跨不同会话工作的具有持久状态的应用程序都需要at least个这样的应用程序之一.

Node.js相关问答推荐

如何修复PayPal Node.js Webhook中Webhook签名验证失败?''

需要关于基于角色授权的设计建议

如何在RavenDB中执行JS索引?

Sass-TypeError:无法读取未定义的属性(正在读取';indexOf';)

如何在Node.js的telegraf.js命令中添加参数?

在 Atlas 触发器(Node JS)中正确初始化 Firebase 管理 SDK

一个非常奇怪的JavaScript heap out of memory问题

Google Calendar API FreeBusy 外部用户

使用Typescript 时我应该避免循环导入吗?

如何在 cypress 测试中进行计算

当我使用 uuid 代码意外崩溃,然后工作正常?

ISODate 未定义

判断一个数组中的每个元素是否都在第二个数组中

如何让should.be.false语法通过 jslint?

npm WARN 不推荐使用 graceful-fs@3.0.8:graceful-fs 版本 3

卸载代码/模块

如何断言不为空?

FireStore 如果不存在则创建一个文档

NodeJS:如何调试检测到 EventEmitter 内存泄漏.添加了 11 个侦听器

AWS Lambda:如何将秘密存储到外部 API?