0
0
Fork 0

複数マシンでログインしたときにトークンが上書きされてしまい、前のマシンで不具合が生じる問題を修正

This commit is contained in:
Xeltica 2022-09-15 15:44:49 +09:00
parent 956a7b1109
commit ae5655bb00

View file

@ -35,12 +35,12 @@ export const getUser = (username: string, host: string): Promise<IUser | undefin
* @returns * @returns
*/ */
export const updateUsersToolsToken = async (user: User | User['id']): Promise<string> => { export const updateUsersToolsToken = async (user: User | User['id']): Promise<string> => {
const u = typeof user === 'number' const id = typeof user === 'number'
? user ? user
: user.id; : user.id;
const misshaiToken = await genToken(); const misshaiToken = await genToken();
Users.update(u, { misshaiToken }); Users.update(id, { misshaiToken });
return misshaiToken; return misshaiToken;
}; };
@ -64,7 +64,8 @@ export const upsertUser = async (username: string, host: string, token: string):
if (u) { if (u) {
await Users.update(u.id, { token, tokenVersion: currentTokenVersion }); await Users.update(u.id, { token, tokenVersion: currentTokenVersion });
} else { } else {
await Users.insert({ username, host, token, tokenVersion: currentTokenVersion }); const result = await Users.save({ username, host, token, tokenVersion: currentTokenVersion });
await updateUsersToolsToken(result.id);
} }
}; };