Groq action actully works?

This commit is contained in:
吳元皓 2025-06-09 14:10:08 +08:00
parent 731d4d9a8c
commit d99031b3b6
2 changed files with 54 additions and 5 deletions

View File

@ -62,6 +62,24 @@ const submitCustomApiKey = async () => {
return;
}
}
try {
const req = await fetch("/api/user/submitGroqKey", {
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
value: customApiKey,
}),
});
const response = await req.json();
if (response.error) {
console.error("Error updating user data:", response.error);
}
} catch (error) {
console.error("Failed to submit change:", error);
}
};
const checkValidApiKey = () => {
@ -80,11 +98,6 @@ const confirmDelete = async () => {
showDeleteDialog.value = false;
};
const deleteAccount = async () => {
const req = await fetch("/api/user/action", {
method: "DELETE",
});
};
const apiKey = customApiKey.value;
try {
const sendApi = await fetch("/api/ai/loadCustomGroqApi", {

View File

@ -0,0 +1,36 @@
import sql from "~/server/components/postgres";
export default defineEventHandler(async (event) => {
// Check user data.
const userToken = getCookie(event, "token");
if (!userToken) {
return {
error: "ERR_NOT_ALLOWED",
};
}
const checkUserToken = await sql`
select * from usertokens
where token=${userToken}
`;
if (checkUserToken.length === 0) {
return {
error: "ERR_NOT_ALLOWED",
};
}
// Actual function
const body = await readBody(event);
const clearBadDataRegex = /[@-_.+a-zA-Z0-9]{2,}/;
const requestChange = "groq_api_key";
const apiKeyqq = body.value.match(clearBadDataRegex);
const sqlC = await sql.unsafe(
`
UPDATE user_other_data SET ${requestChange} = $1
WHERE username = $2`,
[apiKeyqq[0], checkUserToken[0].username],
);
return {
body: body,
data: body.value.match(clearBadDataRegex),
sqlC: sqlC,
};
});