quickgame-server
Version:
quickgame server
1 lines • 3.72 kB
JavaScript
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault"),_regenerator=(Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,_interopRequireDefault(require("@babel/runtime/regenerator"))),_asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")),_koaRouter=_interopRequireDefault(require("koa-router")),_qrImage=_interopRequireDefault(require("qr-image")),_utils=require("../common/utils"),router=(0,_koaRouter.default)(),_default=(router.post("/",(()=>{var t=(0,_asyncToGenerator2.default)(_regenerator.default.mark(function e(r,t){var n,o,a,u,i;return _regenerator.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:e.prev=0,n=r.request.body,o=r.method,a=r.path,u="ws"in n&&0<=n.ws.indexOf("inspector"),i="application"in n&&0<=n.application.indexOf("hybrid.loader"),"post"===o.toLowerCase()&&"/"===a&&u&&i?(_utils.colorconsole.warn("调试器已有重要更新,请更新调试器"),(0,_utils.emitWSEvent)(r.io,"informUpdate"),o=n.ws,a=n.application,u=r.config.port,i=(0,_utils.getInspectorUrl)({ws:o,port:u}),(0,_utils.emitWSEvent)(r.io,"appRegistered",{inspectorUrl:i,application:a}),_utils.colorconsole.info("请访问以下链接进行调试:\n\n".concat(i,"\n")),e.next=17):e.next=15;break;case 15:return e.next=17,t();case 17:e.next=25;break;case 19:return e.prev=19,e.t0=e.catch(0),_utils.colorconsole.error("### App Server ### 出错信息: ".concat(e.t0.message)),_utils.colorconsole.error("### App Server ### 当前调试器与toolkit不兼容,请更新调试器。"),e.next=25,t();case 25:case"end":return e.stop()}},e,null,[[0,19]])}));return function(e,r){return t.apply(this,arguments)}})()),router.post("/postwsid",(()=>{var t=(0,_asyncToGenerator2.default)(_regenerator.default.mark(function e(r,t){var n,o,a;return _regenerator.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return _utils.colorconsole.info("### App Server ### 收到App注册信息, 格式:\n".concat(JSON.stringify(r.request.body),"\n")),n=r.request.body,a=n.ws,n=n.application,o=r.config.port,a=(0,_utils.getInspectorUrl)({ws:a,port:o}),(0,_utils.emitWSEvent)(r.io,"appRegistered",{inspectorUrl:a,application:n}),_utils.colorconsole.info("请访问以下链接进行调试:\n\n".concat(a,"\n")),e.next=8,t();case 8:case"end":return e.stop()}},e)}));return function(e,r){return t.apply(this,arguments)}})()),router.post("/poststdbg",(()=>{var t=(0,_asyncToGenerator2.default)(_regenerator.default.mark(function e(r,t){var n,o,a,u;return _regenerator.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return o=r.config,n=o.port,o=o.engineType,e.next=3,(0,_utils.getSerialNumber)();case 3:return a=e.sent,e.next=6,(0,_utils.forwardPort)(a,o);case 6:return a=e.sent,e.next=9,(0,_utils.getWebSocketDebuggerUrl)(a);case 9:u=e.sent,u=(0,_utils.getInspectorUrl)({ws:u,serverPort:n}),_utils.colorconsole.info("请访问以下链接进行调试:\n\n".concat(u,"\n")),r.app.source!==_utils.SOURCE.IDE?e.next=16:(process.send({url:u,type:"openWin"}),e.next=18);break;case 16:return e.next=18,(0,_utils.startChrome)(u);case 18:return e.next=20,t();case 20:case"end":return e.stop()}},e)}));return function(e,r){return t.apply(this,arguments)}})()),router.get("/qrcode",(()=>{var t=(0,_asyncToGenerator2.default)(_regenerator.default.mark(function e(r,t){var n;return _regenerator.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.config.port,n="http://".concat((0,_utils.getServerIPAndPort)(n)),n=_qrImage.default.image(n,{size:9}),r.type="image/png",r.body=n,e.next=7,t();case 7:case"end":return e.stop()}},e)}));return function(e,r){return t.apply(this,arguments)}})()),exports.default=router);