UNPKG

generator-wxnode-boilerplate

Version:

Yeoman generator for wxnode boilerplate

47 lines (39 loc) 1.4 kB
const Koa = require('koa'); const colors = require('colors'); const proxy = require('./proxy'); const etc = require('../config'); const app = new Koa(); const port = parseInt(process.env.PORT, 10) || etc.FontEndServerPort; // 引用服务端的page路由配置 const pageRouter = require('../app/router/page').default; const initServerRender = require('../app/render/render-server').initServerRender; // 初始化服务端渲染 initServerRender(app); // 将ngi请求代理给 npm run dev:server的服务,将cgi服务抽出来启动是为了方便前后热更 app.use(proxy({ host: `http://127.0.0.1:${etc.ServerPort}`, match: /^\/mock\/cgi\//i, followRedirect: false, jar: true, })); // 老的cgi代理请求,可以绕过refer校验,实现开发域名请求 app.use(proxy({ host: 'https://developers.weixin.qq.com', match: /^\/(cgi-bin\/|basesafeqrcode|uploadimg2cdn)/i, reWriteRefer: true, jar: true, })); // a mock for src/router/index.ts // const router = new KoaRouter(); // router.use('/', pageRouter.routes()); app.use(pageRouter.routes()); app.use(async (ctx) => { // 404 const msg = `404,请在router目录配置你的路由:${ctx.request.url}`; console.error(msg); ctx.state = 404; }); // 创建server app.listen(port,function(){ console.log(`直接访问 http://localhost:${etc.FontEndServerPort}/server`.underline.yellow); });