簡體   English   中英

如何通過虛擬內存在node.js中提供html + js?

[英]How to serve html+js in node.js from virtual memory?

上下文

我正在制作一個瀏覽器內html / js編輯器,為此,我正在將memory-fs (虛擬內存)與Webpack和webpack-html-plugin結合使用,以捆綁用戶在編輯器中創建的文件。 這些文件被寫入虛擬內存,以避免I / O操作,這將在任何用戶在瀏覽器內編輯器中編譯其程序時發生。

問題

使用node.js,如何為生成的html + js-bundle提供服務?

我知道我可以用

express.get('/:id', (req,res) =>...)

制作動態路線,我可以將其映射到正確的輸出。 我也知道我可以用

res.send(html-string-from-virtual-memory)

將html用作字符串。 但是,我不知道這是否還會提供捆綁的javascript,該javascript將包含在html文件中並帶有如下腳本標簽:

<script type="text/javascript" src="index_bundle.js?a9d6aa105c772d02e0f9"></script>

瀏覽器進入這一部分會發生什么? 它將發出另一個必須由服務器使用另一個.get()處理的請求嗎? 看起來像什么? 我不知道。

使Node.js可以從磁盤的/public路徑提供靜態文件來輕松處理它,所以我很努力,因為它不允許我手動處理文件檢索(它只是請求路徑並處理文件本身)以從虛擬內存中獲取文件。

是的,當瀏覽器看到<script>標記時,它將對JavaScript文件發出新請求。 在Node中,您可以創建一個新的express.get()偵聽器並發送JavaScript,就像發送HTML一樣。

res.send(javascript-string-from-virtual-memory)

暫無
暫無

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

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