express中static中間件

若是想要在輸入url後直接訪問服務端的靜態文件,好比cssjs、文件等,就須要知道這些靜態文件的定位,在express框架中express.static中間件函數能夠幫助咱們實現。css

Staicexpress內置中間件函數,服務於靜態文件,基於靜態服務。Staic函數封裝在serve-static模塊當中,serve-static模塊拋出的serveStatic就是static方法。
image.png
上面註釋說明了方法的做用,大概是說該中間件函數爲給定根目錄的文件提供服務,要服務的文件將經過將req.url與提供的根目錄相結合來肯定。當找不到文件時,此模塊將改成調用next()以轉到下一個中間件。廢話很少說,實際操做一下:
image.pnghtml

image.png

在瀏覽器地址欄輸入http://127.0.0.1:8888/public/images/111.jpg發現能夠訪問到服務端靜態圖片。express

image.png

中間件函數要服務的文件將經過將req.url與提供的根目錄相結合來肯定,也就是說http://127.0.0.1:8888/訪問的就是中間件指定的目錄。上圖中http://127.0.0.1:8888/對應的是項目的根目錄,因此在http://127.0.0.1:8888/後面加上public/images/111.jpg就能夠訪問到靜態圖片了。瀏覽器

若是要使用多個靜態資源目錄,請屢次調用express.static中間件函數,Express以您使用express.static中間件函數設置靜態目錄的順序來查找文件。要爲express.static函數提供的文件建立虛擬路徑前綴(路徑並不實際存在於文件系統中,請爲靜態目錄指定安裝路徑。
image.png框架

image.png

image.png

其中,/images/files是指定的虛擬目錄,在服務端中實際是不存在的。函數

參考連接:https://expressjs.com/zh-cn/starter/static-files.htmlurl

相關文章
相關標籤/搜索