【问题标题】:Why asp.net needs IIS(Internet Information Services) to run web server? How this works in nodejs?为什么 asp.net 需要 IIS(Internet Information Services)来运行 Web 服务器?这在nodejs中如何工作?
【发布时间】:2023-03-11 22:43:02
【问题描述】:

如果在Asp.net中开发Web应用程序,则需要IIS来运行Web服务器。

这些two(Asp.net and IIS) works together怎么样? IIS 是否获取构建文件并运行服务器?

expressjs(nodejs 的框架)不使用任何其他软件,如何运行 Web 服务器?

【问题讨论】:

    标签: asp.net node.js webserver


    【解决方案1】:

    我可以解释 node.js 方面的事情,希望其他人能来解释 IIS/ASP.net 方面的事情。

    Node.js 是一个通用的 Javascript 运行时环境。您可以在其中构建各种应用程序,甚至是与 Web 服务器完全无关的应用程序。

    恰好 node.js 中的内置库之一是 http/https 服务器。因此,如果您想构建一个 node.js 驱动的 Web 服务器,您只需获取 http 服务器对象,创建一个服务器,启动它并在请求处理上进行编程。

    Express 是一个构建在 node.js http/https 服务器对象之上的 Web 框架。它使用内置服务器并提供一个框架来定义请求处理程序、设置路由和中间件,并且支持中间件 API 支持各种 3rd 方库来执行各种 Web 服务器类型的事情,例如身份验证、加密、压缩、上传、下载、图像处理、音频处理、视频处理等……

    node.js 与许多其他 web 服务器框架的不同之处在于 node.js 并没有一开始就说我只是一个做 web 服务器工作的工具。它最初是一个通用编程环境,恰好内置了一个非常好的 Web 服务器,作为人们可以使用的工具之一。而且,只需几行代码即可使用内置支持创建和启动您自己的 Web 服务器。我会大胆猜测,构建 Web 服务器应用程序可能是使用 node.js 做的最流行的事情,但肯定不是唯一的事情。

    例如,我编写了一个 node.js 脚本,它在我的磁盘驱动器上进行夜间大扫除。它从我的临时目录中删除某些类型的文件。它有助于管理备份文件(仅保留我的 Adob​​e Lightroom 目录的最后 10 个备份)。 node.js 的这种使用与 Web 服务器完全无关。它只是一个Javascript运行时环境,我碰巧使用其中的文件系统访问库来做一堆文件管理。

    例如,下面是在普通 node.js 中启动基本 Web 服务器的代码:

    const http = require('http');
    const server = http.createServer(function(req, res) {
        console.log("got a request from", req.url);
        res.end("Hi");
    });
    
    // start web server on port 3000
    server.listen(3000);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-14
      • 2018-12-30
      相关资源
      最近更新 更多