forked from OpenWF/SpaceNinjaServer
chore: simplify logoutController (#1342)
Reducing 3-4 MongoDB operations to only 1. Reviewed-on: OpenWF/SpaceNinjaServer#1342 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>
This commit is contained in:
parent
a622393933
commit
fd93f34538
@ -1,19 +1,28 @@
|
||||
import { RequestHandler } from "express";
|
||||
import { getAccountIdForRequest } from "@/src/services/loginService";
|
||||
import { Account } from "@/src/models/loginModel";
|
||||
|
||||
const logoutController: RequestHandler = async (req, res) => {
|
||||
const accountId = await getAccountIdForRequest(req);
|
||||
const account = await Account.findById(accountId);
|
||||
if (account) {
|
||||
account.Nonce = 0;
|
||||
await account.save();
|
||||
export const logoutController: RequestHandler = async (req, res) => {
|
||||
if (!req.query.accountId) {
|
||||
throw new Error("Request is missing accountId parameter");
|
||||
}
|
||||
const nonce: number = parseInt(req.query.nonce as string);
|
||||
if (!nonce) {
|
||||
throw new Error("Request is missing nonce parameter");
|
||||
}
|
||||
|
||||
await Account.updateOne(
|
||||
{
|
||||
_id: req.query.accountId,
|
||||
Nonce: nonce
|
||||
},
|
||||
{
|
||||
Nonce: 0
|
||||
}
|
||||
);
|
||||
|
||||
res.writeHead(200, {
|
||||
"Content-Type": "text/html",
|
||||
"Content-Length": 1
|
||||
});
|
||||
res.end("1");
|
||||
};
|
||||
|
||||
export { logoutController };
|
||||
|
Loading…
x
Reference in New Issue
Block a user