refactor addUser API endpoint to return user object if successful
This commit is contained in:
@@ -15,21 +15,18 @@ export const getUsers = (): { userId: string; userName: string }[] => {
|
|||||||
return userList;
|
return userList;
|
||||||
};
|
};
|
||||||
|
|
||||||
export const addUser = (userName: string, userPassword: string): number => {
|
export const addUser = (userName: string, userPassword: string) => {
|
||||||
const addUserSQLStmt = `INSERT into users(name, pw)
|
const addUserSQLStmt = `INSERT into users(name, pw)
|
||||||
values (?, ?)`;
|
values (?, ?)`;
|
||||||
const statement = db.prepare(addUserSQLStmt);
|
const statement = db.prepare(addUserSQLStmt);
|
||||||
|
|
||||||
let rowCount;
|
let rowInfo;
|
||||||
try {
|
try {
|
||||||
const info = statement.run(userName, userPassword);
|
rowInfo = statement.run(userName, userPassword);
|
||||||
rowCount = info.changes;
|
return rowInfo;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.log(error);
|
console.error('ERROR: ', error);
|
||||||
rowCount = 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return rowCount;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
export const deleteUser = (userId: string) => {
|
export const deleteUser = (userId: string) => {
|
||||||
|
|||||||
@@ -24,7 +24,11 @@ export async function POST({ request, locals }) {
|
|||||||
return json({ error: 'Missing input' }, { status: 400 });
|
return json({ error: 'Missing input' }, { status: 400 });
|
||||||
}
|
}
|
||||||
|
|
||||||
const rowCount = addUser(userName, userPassword);
|
const rowInfo = addUser(userName, userPassword);
|
||||||
|
|
||||||
return new Response(null, { status: rowCount == 1 ? 200 : 400 });
|
if (rowInfo?.changes == 1) {
|
||||||
|
return json({ userId: rowInfo.lastInsertRowid, userName: userName }, { status: 201 });
|
||||||
|
} else {
|
||||||
|
return new Response(null, { status: 400 });
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user