为我的个人项目学习nodej.分析其他开发人员的代码示例,观看youtube视频.我注意到一件我不完全理解的事情,为什么我遇到的大多数nodejs示例都有一个用于http服务器启动和端口监听的代码部分?但应用程序本身不使用任何与http相关的东西,比如处理http请求/响应.例如:

const express = require('express')
const path = require('path')
const http = require('http')
const cors = require('cors')


const PORT = process.env.PORT || 5000
const app = express();
const server = http.createServer(app).listen(PORT, () => console.log(`Listening on ${PORT}\n`))
app.use(express.static(path.join(__dirname, 'public')))
app.use(cors({ credentials: true, origin: '*' }))

如果我的nodejs应用程序是一个需要在服务器端运行的脚本,它从其他API收集一些信息并存储在数据库中,等等,那么我还需要创建并启动HTTP服务器吗?

推荐答案

为什么我遇到的大多数nodejs示例都有http服务器启动和端口侦听的代码部分?

因为这就是人们大多数时候使用nodejs的方式:作为web服务器.这并不意味着这是强制性的,甚至不是一个好的做法.

我需要创建并启动HTTP服务器吗?

当然不是.如果你不需要,为什么要这么做?不要担心教程或示例,它们不了解您的 case 和需求.

Node.js相关问答推荐

在导入时未找到Pupeteer-PAGE-Proxy包

Mongoose查询-如何根据当前查找ID获取其他集合并将其插入到当前查找中?

未显示NPM版本

为什么这个verifyToken函数从未被调用过?

FiRestore UPDATE方法引发错误:&Quot;错误:13内部:收到代码为1&Quot;的RST_STREAM

Gulp 能否向 Docker 发出增量构建的第一次迭代完成的信号?

未授权使用联合身份未授权用户角色从 Amplify graphQL 访问类型 Y 上的 X

在对象数组中的数组中嵌套 $lookup - Mongodb

只要我在后端正确验证所有内容,就可以将这些数据存储在本地存储中吗?

为什么要加密 CSRF 令牌?

为什么我的 Cypress Post 请求的请求正文是空的?

无法关闭 node.js 中的mongoose 连接

如何解决 npm install react-select failure with error : An unknown git error occurred, git@github.com :Permission denied (publickey)

配额超出了每分钟的 Sheets API 写入请求数. node .js

适用于 Windows 7 的 NodeJS

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

使用 pg-promise 进行多行插入

在 Jade 包含中使用变量

如何在 node.js 沙箱中安全地运行用户提交的脚本?

从 node.js 连接到 mongodb 时出现 ECONNREFUSED 错误