我可以在自定义路径(例如/ static /)上使用koa-static服务资产吗?

https://github.com/koajs/static上的文档以及我尝试koa-static的亲身经历使我相信您只能从应用程序的根URL提供文件。

例如:

app.use(serve('./some/dir/'));

鉴于上述用法serve,访问文件的URL ./some/dir/something.txt将为localhost:3000/something.txt似乎没有一种方法可以配置我的应用程序,以localhost:3000/static/something.txt代替使用同一文件(以及同一目录中的所有其他文件)

我是Node和Koa的新手,所以我才刚刚开始涉足这一领域,而我可能会错过一些显而易见的东西。

我尝试使用koa-route实现此目的:

app.use(route.get('/static/*'), serve(__dirname + '/some/dir'));

但根据要求,/static/something.txt我遇到了以下问题:

  TypeError: Cannot read property 'apply' of undefined
      at Object.<anonymous> (/Users/me/example/src/node_modules/koa-route/index.js:34:18)
      at GeneratorFunctionPrototype.next (native)
      at onFulfilled (/Users/me/example/src/node_modules/koa/node_modules/co/index.js:64:19)
      at /Users/me/example/src/node_modules/koa/node_modules/co/index.js:53:5
      at Object.co (/Users/me/example/src/node_modules/koa/node_modules/co/index.js:49:10)
      at Object.toPromise (/Users/me/example/src/node_modules/koa/node_modules/co/index.js:117:63)
      at next (/Users/me/example/src/node_modules/koa/node_modules/co/index.js:98:29)
      at onFulfilled (/Users/me/example/src/node_modules/koa/node_modules/co/index.js:68:7)
      at /Users/me/example/src/node_modules/koa/node_modules/co/index.js:53:5
      at Object.co (/Users/me/example/src/node_modules/koa/node_modules/co/index.js:49:10)
小宇宙2020/03/30 17:20:36

您可以使用koa-static-folder如果您仍然感兴趣。