12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- import Koa from 'koa';
- import { PORT, HOST } from './app.config.mjs';
- import router from './router/index.mjs';
- import serve from 'koa-static';
- // console.log(appStatic);
- const app = new Koa();
- // 中间件的执行顺序
- // 通过app.use方法 去 使用中间件。多次调用 就可以 注册多个中间件
- // app.use((ctx, next) => {
- // console.log('a');
- // next();
- // });
- // app.use((ctx, next) => {
- // next();
- // console.log('b');
- // });
- // app.use((ctx, next) => {
- // console.log('c');
- // next();
- // });
- // app.use((ctx, next) => {
- // console.log('a start');
- // next();
- // console.log('a end');
- // });
- // app.use((ctx, next) => {
- // console.log('b start');
- // next();
- // console.log('b end');
- // });
- // app.use((ctx, next) => {
- // console.log('c start');
- // next();
- // console.log('c end');
- // });
- // a start, b start, c start, c end, b end, a end
- // app.use(async (ctx, next) => {
- // console.log('a start');
- // await next();
- // console.log('a end');
- // });
- // app.use(async (ctx, next) => {
- // console.log('b start');
- // await next();
- // console.log('b end');
- // });
- // app.use(async (ctx, next) => {
- // console.log('c start');
- // await next();
- // console.log('c end');
- // });
- // app.use((ctx) => {
- // ctx.body = 'hello, world.';
- // });
- //! 总结:中间件的执行顺序 遵循 洋葱模型
- // 托管静态文件
- app.use(serve('pages'));
- // 注入路由功能
- app.use(router.routes());
- // 在options请求中响应服务端支持哪些跨域的请求方法
- app.use(router.allowedMethods());
- app.listen(PORT, HOST, () => {
- console.info(`Server is running at 'http://${HOST}:${PORT}'`);
- });
|