添加获取大区热更新地址的接口
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import { Controller } from 'egg';
|
||||
import { RegionModel } from '@db/Region';
|
||||
|
||||
export default class UpdateController extends Controller {
|
||||
public async getversion() {
|
||||
@@ -7,4 +8,11 @@ export default class UpdateController extends Controller {
|
||||
ctx.body = await ctx.service.update.getVersion(version);
|
||||
}
|
||||
|
||||
public async getUpdateUrl() {
|
||||
const { ctx } = this;
|
||||
const env = this.app.config.realEnv;
|
||||
const curRegion = await RegionModel.findRegionByEnv(env);
|
||||
const { curVersion, updateResUrl } = curRegion;
|
||||
ctx.body = await ctx.service.update.getUpdateUrl(env, curVersion, updateResUrl);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,6 +23,7 @@ export default (app: Application) => {
|
||||
router.post('/game/getnotice', tokenParser, controller.game.getnotice);
|
||||
router.post('/gate/queryenter', tokenParser, controller.game.queryEnter);
|
||||
router.post('/update/getversion', controller.update.getversion);
|
||||
router.post('/update/getupdateurl', controller.update.getUpdateUrl);
|
||||
router.post('/web/reloadresource', app.middleware.gmTokenParser(), controller.game.reloadResource);
|
||||
|
||||
|
||||
|
||||
@@ -22,5 +22,17 @@ export default class Update extends Service {
|
||||
remoteVersionUrl: 'http://zyz-hot-update.trgame.cn/version.manifest'
|
||||
});
|
||||
}
|
||||
|
||||
public async getUpdateUrl(env: string, curVersion: number, updateResUrl: string) {
|
||||
const ctx = this.ctx;
|
||||
if (!env || !curVersion || !updateResUrl) return ctx.service.utils.resResult(STATUS.UPDATE_INFO_ERR);
|
||||
|
||||
const baseUrl = `${updateResUrl}/${env}/${curVersion}`;
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
packageUrl: baseUrl,
|
||||
remoteManifestUrl: `${baseUrl}/project.manifest`,
|
||||
remoteVersionUrl: `${baseUrl}/version.manifest`
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user