返回提交历史
Modified
src/controllers/api/joinSessionController.ts
+13
-2
Modified
src/routes/api.ts
+3
-2
XFEstudio/XFESpaceNinjaServer
feat: joinSession get controller (#3537)
Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/3537 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>
fe9742e7
代码差异
2 个文件
+16
-4
@@ -1,12 +1,23 @@
1
1
import type { RequestHandler } from "express";
2
2
import { getSessionByID } from "../../managers/sessionManager.ts";
3
3
import { logger } from "../../utils/logger.ts";
4
import { getAccountForRequest } from "../../services/loginService.ts";
5
import { toOid2 } from "../../helpers/inventoryHelpers.ts";
4
6
5
export const joinSessionController: RequestHandler = (req, res) => {
7
export const joinSessionGetController: RequestHandler = async (req, res) => {
8
const account = await getAccountForRequest(req);
9
const session = getSessionByID(req.query.sessionId as string);
10
if (session) res.json({ rewardSeed: session.rewardSeed, sessionId: toOid2(session.sessionId, account.BuildLabel) });
11
else res.json({});
12
};
13
14
export const joinSessionPostController: RequestHandler = async (req, res) => {
15
const account = await getAccountForRequest(req);
6
16
const reqBody = JSON.parse(String(req.body)) as IJoinSessionRequest;
7
17
logger.debug(`JoinSession Request`, { reqBody });
8
18
const session = getSessionByID(reqBody.sessionIds[0]);
9
res.json({ rewardSeed: session?.rewardSeed, sessionId: { $oid: session?.sessionId } });
19
if (session) res.json({ rewardSeed: session.rewardSeed, sessionId: toOid2(session.sessionId, account.BuildLabel) });
20
else res.json({});
10
21
};
11
22
12
23
interface IJoinSessionRequest {
@@ -96,7 +96,7 @@ import { inboxController } from "../controllers/api/inboxController.ts";
96
96
import { infestedFoundryController } from "../controllers/api/infestedFoundryController.ts";
97
97
import { inventoryController } from "../controllers/api/inventoryController.ts";
98
98
import { inventorySlotsController } from "../controllers/api/inventorySlotsController.ts";
99
import { joinSessionController } from "../controllers/api/joinSessionController.ts";
99
import { joinSessionGetController, joinSessionPostController } from "../controllers/api/joinSessionController.ts";
100
100
import { loginController } from "../controllers/api/loginController.ts";
101
101
import { loginRewardsController } from "../controllers/api/loginRewardsController.ts";
102
102
import { loginRewardsSelectionController } from "../controllers/api/loginRewardsSelectionController.ts";
@@ -230,6 +230,7 @@ apiRouter.get("/getVendorInfo.php", getVendorInfoController);
230
230
apiRouter.get("/giveStartingGear.php", giveStartingGearGetController);
231
231
apiRouter.get("/inbox.php", inboxController);
232
232
apiRouter.get("/inventory.php", inventoryController);
233
apiRouter.get("/joinSession.php", joinSessionGetController); // ~U18
233
234
apiRouter.get("/leaveSession.php", deleteSessionController); // ~U10
234
235
apiRouter.get("/loginRewards.php", loginRewardsController);
235
236
apiRouter.get("/logout.php", logoutController);
@@ -336,7 +337,7 @@ apiRouter.post("/infestedFoundry.php", infestedFoundryController);
336
337
apiRouter.post("/instantCompleteRecipe.php", claimCompletedRecipeController); // U8
337
338
apiRouter.post("/inventory.php", inventoryController); // used by companion app
338
339
apiRouter.post("/inventorySlots.php", inventorySlotsController);
339
apiRouter.post("/joinSession.php", joinSessionController);
340
apiRouter.post("/joinSession.php", joinSessionPostController);
340
341
apiRouter.post("/login.php", loginController);
341
342
apiRouter.post("/loginRewardsSelection.php", loginRewardsSelectionController);
342
343
apiRouter.post("/logout.php", logoutController); // from ~U16, don't know when they changed it to GET