返回提交历史
Added
src/controllers/api/getRecentPlayersController.ts
+19
-0
Modified
src/routes/api.ts
+2
-0
XFEstudio/XFESpaceNinjaServer
feat: getRecentPlayers (#3460)
I can't really identify a purpose for this endpoint, but I suppose it's just supposed to fill in some information the client doesn't cache locally. Closes #3287 Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/3460 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>
0e6b6809
代码差异
2 个文件
+21
-0
@@ -0,0 +1,19 @@
1
import type { RequestHandler } from "express";
2
import type { IFriendInfo } from "../../types/friendTypes.ts";
3
import { getJSONfromString } from "../../helpers/stringHelpers.ts";
4
import { addAccountDataToFriendInfo, addInventoryDataToFriendInfo } from "../../services/friendService.ts";
5
6
export const getRecentPlayersController: RequestHandler = async (req, res): Promise<void> => {
7
const payload = getJSONfromString<IRecentPlayersPayload>(String(req.body));
8
const promises: Promise<void>[] = [];
9
for (const info of payload.RecentPlayers) {
10
promises.push(addAccountDataToFriendInfo(info));
11
promises.push(addInventoryDataToFriendInfo(info));
12
}
13
await Promise.all(promises);
14
res.json(payload);
15
};
16
17
interface IRecentPlayersPayload {
18
RecentPlayers: IFriendInfo[]; // in request, this is all defaulted except for _id and DisplayName
19
}
@@ -75,6 +75,7 @@ import { getIgnoredUsersController } from "../controllers/api/getIgnoredUsersCon
75
75
import { getNewRewardSeedController } from "../controllers/api/getNewRewardSeedController.ts";
76
76
import { getPastWeeklyChallengesController } from "../controllers/api/getPastWeeklyChallengesController.ts";
77
77
import { getProfileViewingDataPostController } from "../controllers/dynamic/getProfileViewingDataController.ts";
78
import { getRecentPlayersController } from "../controllers/api/getRecentPlayersController.ts";
78
79
import { getShipController } from "../controllers/api/getShipController.ts";
79
80
import { getVendorInfoController } from "../controllers/api/getVendorInfoController.ts";
80
81
import { getVoidProjectionRewardsController } from "../controllers/api/getVoidProjectionRewardsController.ts";
@@ -309,6 +310,7 @@ apiRouter.post("/getAlliance.php", getAllianceController);
309
310
apiRouter.post("/getFriends.php", getFriendsController);
310
311
apiRouter.post("/getGuildDojo.php", getGuildDojoController);
311
312
apiRouter.post("/getProfileViewingData.php", getProfileViewingDataPostController);
313
apiRouter.post("/getRecentPlayers.php", getRecentPlayersController);
312
314
apiRouter.post("/getVoidProjectionRewards.php", getVoidProjectionRewardsController);
313
315
apiRouter.post("/gifting.php", giftingController);
314
316
apiRouter.post("/gildWeapon.php", gildWeaponController);