首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Koa2提供静态文件

使用Koa2提供静态文件
EN

Stack Overflow用户
提问于 2017-03-14 19:00:39
回答 2查看 2.3K关注 0票数 0

当有人使用Koa2路由时,我如何提供静态文件?我试了很多东西,但总是找不到消息。服务器已响应状态404。

代码语言:javascript
复制
import 'babel-polyfill'
import co from 'co'
import path from 'path'
import render from 'koa-swig'
import Koa from 'koa'
import Router from 'koa-router'
import serve from 'koa-static'
import convert from 'koa-convert'
import send from 'koa-send'

const app: Koa = new Koa()
const route: Routerr = new Router()

**example 1**

app.use(serve(path.resolve(__dirname + '/public/index.html')))

router.get('/lista', function *() {
  console.log('Hello')
})

**example 2**

app.use(async (ctx) => {
  await send(ctx, '/index.html', { root: '/public' })
})

router.get('/lista', function *() {
  console.log('Hello')
})



app.use(router.routes())
app.use(router.allowedMethods())
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-14 19:09:18

不久前,我制作了一些简单的Koa 2原型应用程序,基本上只是从模块页面中复制了示例。不幸的是,这意味着我真的不能告诉您它是如何工作的,但是我确实得到了一些有用的东西,它看起来像这样(使用ES2016):

代码语言:javascript
复制
const serve = require('koa-static');
const mount = require('koa-mount');
const Koa = require('koa');

const static_pages = new Koa();
static_pages.use(serve('static'));

const app = new Koa();
app
    .use(mount('/static', static_pages))

这个“挂载”/static作为所有静态页面的根目录,它们位于本地目录static中。

票数 3
EN

Stack Overflow用户

发布于 2017-07-26 04:59:26

这是一种与@一些程序员兄弟提到的类似的方法,但没有使用挂载

代码语言:javascript
复制
import Koa from 'koa';
import serveStatic from 'koa-static';

const app = new Koa();
app.use(serveStatic(__dirname + '/public'));
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42794416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档