| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 | 
							- import Koa from 'koa';
 
- import path from 'path';
 
- import Router from 'koa-router';
 
- import body from 'koa-body';
 
- import cors from 'koa2-cors';
 
- import koaStatic from 'koa-static';
 
- import websockify from 'koa-websocket';
 
- import route from 'koa-route';
 
- import AppRoutes from './routes';
 
- const PORT = 3300;
 
- const app = websockify(new Koa());
 
- app.ws.use(function (ctx, next) {
 
-   ctx.websocket.send('connection succeeded!');
 
-   return next(ctx);
 
- });
 
- app.ws.use(
 
-   route.all('/test', function (ctx) {
 
-     // ctx.websocket.send('Hello World');
 
-     ctx.websocket.on('message', function (message) {
 
-       // do something with the message from client
 
-       if (message !== 'ping') {
 
-         const data = JSON.stringify({
 
-           id: Math.ceil(Math.random() * 1000),
 
-           time: new Date().getTime(),
 
-           res: `${message}`,
 
-         });
 
-         ctx.websocket.send(data);
 
-       }
 
-       console.log(message);
 
-     });
 
-   })
 
- );
 
- const router = new Router();
 
- // router
 
- AppRoutes.forEach((route) => router[route.method](route.path, route.action));
 
- app.use(cors());
 
- app.use(
 
-   body({
 
-     encoding: 'gzip',
 
-     multipart: true,
 
-     formidable: {
 
-       // uploadDir: path.join(__dirname, '/upload/'), // 设置文件上传目录
 
-       keepExtensions: true,
 
-       maxFieldsSize: 20 * 1024 * 1024,
 
-     },
 
-   })
 
- );
 
- app.use(router.routes());
 
- app.use(router.allowedMethods());
 
- app.use(koaStatic(path.join(__dirname)));
 
- app.listen(PORT, () => {
 
-   console.log(`Application started successfully: http://localhost:${PORT}`);
 
- });
 
 
  |