簡體   English   中英

為什么asp.net需要IIS(Internet信息服務)來運行Web服務器? 這在nodejs中如何工作?

[英]Why asp.net needs IIS(Internet Information Services) to run web server? How this works in nodejs?

如果在Asp.net開發了Web應用程序,則需要IIS來運行Web服務器。

two(Asp.net and IIS) works together如何two(Asp.net and IIS) works together IIS是否獲取構建文件並運行服務器?

expressjsexpressjs的框架)如何在不使用任何其他軟件的情況下運行Web服務器?

我可以解釋一下node.js方面,希望其他人也可以解釋一下IIS / ASP.net方面。

Node.js是一個通用的Javascript運行時環境。 您可以在其中構建各種應用程序,甚至與Web服務器完全無關的應用程序。

碰巧的是,node.js中的內置庫之一是http / https服務器。 因此,如果您想構建一個由node.js驅動的Web服務器,則只需獲取http服務器對象,創建一個服務器,啟動它,然后根據請求處理進行編程。

Express是一個基於node.js http / https服務器對象構建的Web框架。 它使用內置服務器,並提供圍繞該服務器的框架,用於定義請求處理程序,設置路由和中間件,並且中間件API被支持,使各種第三方庫能夠執行各種Web服務器類型的事情,例如身份驗證,加密,壓縮,上傳,下載,圖像處理,音頻處理,視頻處理等...

使node.js與許多其他Web服務器框架區分開的原因是,node.js並非一開始就說我只是做Web服務器工作的工具。 它始於一個通用的編程環境,它恰好內置了一個不錯的Web服務器,可以作為人們可以使用的一種工具。 而且,僅需幾行代碼即可使用內置支持創建和啟動自己的Web服務器。 我可能會猜測,構建Web服務器應用程序可能是與node.js一起最受歡迎的事情,但肯定不是唯一的事情。

例如,我寫了一個node.js腳本,該腳本每晚對磁盤驅動器進行一次大掃除。 它從我的臨時目錄中刪除某些類型的文件。 它有助於管理備份文件(僅保留我的Adobe 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);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM