为啥需要创建http服务器? [关闭]

Posted

技术标签:

【中文标题】为啥需要创建http服务器? [关闭]【英文标题】:Why need to create a http server? [closed]为什么需要创建http服务器? [关闭] 【发布时间】:2020-04-22 11:30:38 【问题描述】:

javascript中,在nodeJs上工作,我只能使用fs模块读写/更新,为什么还要使用http模块创建服务器我存储数据的 json 文件中的数据?

【问题讨论】:

我不确定我是否理解这个问题。 HTTP 服务器与在文件系统上读取和写入内容完全无关。这是两个截然不同且不可互换的功能。 除非您通过 HTTP “提供”文档/数据,否则您不需要它,这就是为什么如果您只运行节点引擎并读取不需要 HTTP 服务器的文件,它就是服务器. 【参考方案1】:

仅当您想通过 API 或 HTTP 协议公开某些功能时,才需要创建 http。处理文件等不需要api暴露的,不需要http。

【讨论】:

【参考方案2】:

您不需要使用 http 模块来处理文件。 fs - 这只是你需要的。用于创建服务器的 Http 模块,它可以通过来自互联网的请求来响应您的数据。

【讨论】:

【参考方案3】:

http 模块允许您使用hypertext transfer protocol 发送数据。 Fs 只允许您与本地文件交互,而 http 允许您处理另一台服务器上或互联网上的文件。

【讨论】:

【参考方案4】:

node.js 的美妙之处在于它是一个通用的 Javascript 环境。您可以用它解决各种不同的问题,并且您只需 require()import 您的任务所需的模块。

如果您的任务只是读写文件,那么您只需使用适合该任务的模块,例如 fs 模块或 stream 模块。

node.js 最常用的任务可能是创建一个 http Web 服务器来提供静态和动态网页。因此,大量的 node.js 教程专注于如何在 node.js 中创建 Web 服务器。但是,如果您的任务中不需要 Web 服务器或向其他服务器发出 http 请求,那么您当然根本不需要 http 模块。

【讨论】:

以上是关于为啥需要创建http服务器? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

为啥有些开发者使用“http”和“express”来创建服务器? [复制]

HTTP 服务器是 IPC 的好主意吗? [关闭]

为啥jmeter4.0线程组右键添加,没有非测试元件选项?这样不是就找不到HTTP代理服务器了?

windows7 创建http 服务器

为啥我在 gcloud 中设置 http 负载均衡器时无法选择我创建的托管实例组?

服务之间的调用为啥不直接用 HTTP 而用 RPC?