Refactor API and schema paths, fix key usage and profile data
Renamed 'mojangapi' directories to 'api' for both routes and schemas to standardize API structure. Updated serverService to use the correct public key (profilePropertyKeys) for server metadata. Fixed sessionsService to return full skin and cape data arrays instead of just the first element.
This commit is contained in:
10
routes/api/minecraft/profile/lookup/bulk/byname.js
Normal file
10
routes/api/minecraft/profile/lookup/bulk/byname.js
Normal file
@@ -0,0 +1,10 @@
|
||||
const express = require("express")
|
||||
const userService = require("../../../../../../services/userService")
|
||||
const router = express.Router()
|
||||
|
||||
router.post("/", async (req, res) => {
|
||||
const profiles = await userService.bulkLookup(req.body)
|
||||
return res.status(200).json(profiles)
|
||||
})
|
||||
|
||||
module.exports = router
|
||||
28
routes/api/profile/lookup/name/[username].js
Normal file
28
routes/api/profile/lookup/name/[username].js
Normal file
@@ -0,0 +1,28 @@
|
||||
const express = require("express")
|
||||
const utils = require("../../../../../modules/utils")
|
||||
const userService = require("../../../../../services/userService")
|
||||
const authService = require("../../../../../services/authService")
|
||||
const { ServiceError } = require("../../../../../errors/errors")
|
||||
const router = express.Router({ mergeParams: true })
|
||||
|
||||
|
||||
router.get("", async (req, res) => {
|
||||
const profile = await userService.getLegacyProfile(req.params.username)
|
||||
const isUsernameOK = await authService.checkUsernameAvailability(newName)
|
||||
const at = req.query.at
|
||||
if (at != undefined && utils.isTrueFromDotEnv("SUPPORT_UUID_TO_NAME_HISTORY")) {
|
||||
const history = await userService.getNameUUIDs(parseInt(at))
|
||||
return res.status(history.code).json(history.data)
|
||||
} else {
|
||||
throw new ServiceError(400, req.originalUrl, "IllegalArgumentException", "Invalid timestamp.")
|
||||
}
|
||||
if (isUsernameOK.status != "AVAILABLE") {
|
||||
throw new ServiceError(400, req.originalUrl, "CONSTRAINT_VIOLATION", "Invalid username.")
|
||||
}
|
||||
if (!profile) {
|
||||
return res.status(204).send()
|
||||
}
|
||||
return res.status(200).json(profile)
|
||||
})
|
||||
|
||||
module.exports = router
|
||||
10
routes/api/profiles/minecraft.js
Normal file
10
routes/api/profiles/minecraft.js
Normal file
@@ -0,0 +1,10 @@
|
||||
const express = require("express")
|
||||
const userService = require("../../../services/userService")
|
||||
const router = express.Router()
|
||||
|
||||
router.post("/", async (req, res) => {
|
||||
const profiles = await userService.bulkLookup(req.body)
|
||||
return res.status(200).json(profiles)
|
||||
})
|
||||
|
||||
module.exports = router
|
||||
15
routes/api/user/profiles/[uuid]/names.js
Normal file
15
routes/api/user/profiles/[uuid]/names.js
Normal file
@@ -0,0 +1,15 @@
|
||||
const express = require("express")
|
||||
const utils = require("../../../../../modules/utils")
|
||||
const userService = require("../../../../../services/userService")
|
||||
const { ServiceError } = require("../../../../../errors/errors")
|
||||
const router = express.Router({ mergeParams: true })
|
||||
|
||||
router.get("/", async (req, res) => {
|
||||
if (!utils.isTrueFromDotEnv("SUPPORT_UUID_TO_NAME_HISTORY")) {
|
||||
throw new ServiceError(404, req.originalUrl, "Not found", null, null)
|
||||
}
|
||||
const history = await userService.getPlayerUsernamesHistory(req.params.uuid)
|
||||
return res.status(200).json(history)
|
||||
})
|
||||
|
||||
module.exports = router
|
||||
27
routes/api/users/profiles/minecraft/[username].js
Normal file
27
routes/api/users/profiles/minecraft/[username].js
Normal file
@@ -0,0 +1,27 @@
|
||||
const express = require("express")
|
||||
const utils = require("../../../../../modules/utils")
|
||||
const userService = require("../../../../../services/userService")
|
||||
const authService = require("../../../../../services/authService")
|
||||
const { ServiceError } = require("../../../../../errors/errors")
|
||||
const router = express.Router({ mergeParams: true })
|
||||
|
||||
router.get("", async (req, res) => {
|
||||
const profile = await userService.getLegacyProfile(req.params.username)
|
||||
const isUsernameOK = await authService.checkUsernameAvailability(newName)
|
||||
const at = req.query.at
|
||||
if (at != undefined && utils.isTrueFromDotEnv("SUPPORT_UUID_TO_NAME_HISTORY")) {
|
||||
const history = await userService.getNameUUIDs(parseInt(at))
|
||||
return res.status(history.code).json(history.data)
|
||||
} else {
|
||||
throw new ServiceError(400, req.originalUrl, "IllegalArgumentException", "Invalid timestamp.")
|
||||
}
|
||||
if (isUsernameOK.status != "AVAILABLE") {
|
||||
throw new ServiceError(400, req.originalUrl, "CONSTRAINT_VIOLATION", "Invalid username.")
|
||||
}
|
||||
if (!profile) {
|
||||
return res.status(204).send()
|
||||
}
|
||||
return res.status(200).json(profile)
|
||||
})
|
||||
|
||||
module.exports = router
|
||||
Reference in New Issue
Block a user