为啥需要创建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”来创建服务器? [复制]
为啥jmeter4.0线程组右键添加,没有非测试元件选项?这样不是就找不到HTTP代理服务器了?