国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Koa-Static 該換換了吧 試試 Awesome-Static

kevin / 1394人閱讀

摘要:吼,所以我做了,和一樣,都是對的一層封裝,只不過用編寫,對支持良好。

其實(shí)還是得按自個(gè)兒的需求來。

koa-static 有啥問題么

koa-static是一個(gè)非常輕量的koa中間件,能夠迅速的搭建起一個(gè)靜態(tài)文件服務(wù)器,通常我們把靜態(tài)文件都放進(jìn)public,并且通過類似koa-static這樣的東西來將我們的public作為靜態(tài)目錄,這樣的話,我們就能直接通過根路由進(jìn)行訪問了。

emmmm,扯多了。回到正軌

首先koa-static不能映射到其他的路由上,一般是跟路由,比如訪問 public/main.html(假設(shè) public 為靜態(tài)目錄),那么就可以通過 host:port/main.html 進(jìn)行訪問得到 main.html,但是有時(shí)候我不想映射到根路由,這時(shí)候,koa-static就顯得力不從心了。

第二個(gè)問題是koa-static只支持GETHEAD兩個(gè) HTTP 方法來進(jìn)行訪問,這在大多數(shù)場景下是有用的,但是難免會(huì)遇到一些特別的場景,比如你想用POST方法來拿到服務(wù)器上的靜態(tài)文件(如果你想)。

awesome-static

吼,所以我做了awesome-staticawesome-statickoa-static一樣,都是對 koa-send的一層封裝,只不過awesome-staticTypescript編寫,對 VSCode 支持良好。

awesome-static擴(kuò)充了koa-staticoptions,添加了兩個(gè)字段

route

allowMethods

route為要映射到的路由,allowMethods是要允許的 HTTP 方法

這兩個(gè)字段都是可選的,route 的默認(rèn)值就是根路由,allowMethods 的默認(rèn)值為 HEADGET ,所以你能像使用 koa-static 一樣的使用 awesome-static

看一下使用方法

const Koa = require("koa");
const app = new Koa();
const { AwesomeStatic } = require("awesome-static");

app.use(AwesomeStatic("public"));

app.listen(8888);

public 下有一個(gè) html 文件,下面是 public 的目錄結(jié)構(gòu)

public
└── main.html

在啟動(dòng)服務(wù)器后就能通過http://localhost:8888/main.html進(jìn)行訪問了

現(xiàn)在來配置一下 route

const Koa = require("koa");
const app = new Koa();
const { AwesomeStatic } = require("awesome-static");

app.use(AwesomeStatic("public", {
    route:"static"
}));

app.listen(8888);

配置了 routestatic 那么現(xiàn)在訪問 main.html 就需要訪問http://localhost:8888/static/main.html

如果再配置一下 allowMethods ,來設(shè)置一下允許的 HTTP 方法,讓它只能通過POST 來訪問

const Koa = require("koa");
const app = new Koa();
const { AwesomeStatic } = require("awesome-static");

app.use(AwesomeStatic("public", {
    route:"static",
    allowMethods:["POST"]
}));

app.listen(8888);

現(xiàn)在再通過 http://localhost:8888/static/main.html 就會(huì)去 404 了~

來模擬一個(gè) POST 請求

curl http://localhost:8888/static/main.html -X POST

Output:



  
    
    
    
    Document
  
  
    

Main

Github
https://github.com/HaoDaWang/awesome-static

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/101417.html

相關(guān)文章

  • Koa-Static 換換了吧 試試 Awesome-Static

    摘要:吼,所以我做了,和一樣,都是對的一層封裝,只不過用編寫,對支持良好。 其實(shí)還是得按自個(gè)兒的需求來。 koa-static 有啥問題么 koa-static是一個(gè)非常輕量的koa中間件,能夠迅速的搭建起一個(gè)靜態(tài)文件服務(wù)器,通常我們把靜態(tài)文件都放進(jìn)public,并且通過類似koa-static這樣的東西來將我們的public作為靜態(tài)目錄,這樣的話,我們就能直接通過根路由進(jìn)行訪問了。 emm...

    CNZPH 評(píng)論0 收藏0
  • koa-static中間件學(xué)習(xí)搭建靜態(tài)文件服務(wù)器

    摘要:從中間件學(xué)習(xí)搭建靜態(tài)文件服務(wù)器原文地址中有說明它只是的一個(gè)包裝查看的源碼可以發(fā)現(xiàn),它做的工作是根據(jù)傳入的查找文件是否存在,如果存在就創(chuàng)建一個(gè)流,不存在就拋出錯(cuò)誤。 從koa-static中間件學(xué)習(xí)搭建靜態(tài)文件服務(wù)器 原文地址 koa-send Static file serving middleware koa-static中有說明它只是koa-send的一個(gè)包裝 const send...

    Olivia 評(píng)論0 收藏0
  • koa中利用nginx反向代理動(dòng)態(tài)及靜態(tài)文件

    摘要:背景最近在做一個(gè)基于的微信公眾平臺(tái)腳手架,由于我只有一個(gè)域名,現(xiàn)在同時(shí)有好幾個(gè)應(yīng)用在上面掛載著,所以只能做一下反向代理,可是反向代理只能代理動(dòng)態(tài)文件,對于靜態(tài)資源貌似沒有什么好的解決方法本文針對以上問題進(jìn)行逐步解決,通過修改相關(guān)配置,并結(jié)合 背景 最近在做一個(gè)基于koa的微信公眾平臺(tái)腳手架,由于我只有一個(gè)域名demozhan.com,現(xiàn)在同時(shí)有好幾個(gè)web應(yīng)用在上面掛載著,所以只能做一...

    opengps 評(píng)論0 收藏0
  • koa中利用nginx反向代理動(dòng)態(tài)及靜態(tài)文件

    摘要:背景最近在做一個(gè)基于的微信公眾平臺(tái)腳手架,由于我只有一個(gè)域名,現(xiàn)在同時(shí)有好幾個(gè)應(yīng)用在上面掛載著,所以只能做一下反向代理,可是反向代理只能代理動(dòng)態(tài)文件,對于靜態(tài)資源貌似沒有什么好的解決方法本文針對以上問題進(jìn)行逐步解決,通過修改相關(guān)配置,并結(jié)合 背景 最近在做一個(gè)基于koa的微信公眾平臺(tái)腳手架,由于我只有一個(gè)域名demozhan.com,現(xiàn)在同時(shí)有好幾個(gè)web應(yīng)用在上面掛載著,所以只能做一...

    figofuture 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<