Greetings, {{ user }}
+
+ Your Groq API:
+
+
+
+
+
+
diff --git a/components/app/windows/user.vue b/components/app/windows/user.vue
index 92a3db8..bac6dd6 100644
--- a/components/app/windows/user.vue
+++ b/components/app/windows/user.vue
@@ -29,7 +29,6 @@ const submitUserPassword = async () => {
if (!res.error) {
error.value = false;
- localStorage.setItem("token", res.token);
success.value = true;
console.log(res);
userAccount.value = "";
diff --git a/components/blurPageBeforeLogin.vue b/components/blurPageBeforeLogin.vue
index 1b12690..36a2fb5 100644
--- a/components/blurPageBeforeLogin.vue
+++ b/components/blurPageBeforeLogin.vue
@@ -9,20 +9,8 @@ const emit = defineEmits(["windowopener", "error", "loadValue"]);
try {
// 喔 我沒有加 await :( 難怪有問題
- const token = localStorage.getItem("token");
const { data, error: sendError } = await useFetch(
"/api/user/validateUserToken",
- {
- method: "POST",
- headers: {
- "Content-Type": "application/json",
- },
- body: JSON.stringify({
- token: token,
- lang: locale,
- page: "a_window_application_using_blurPageBeforeLogin_component",
- }),
- },
);
if (sendError.value) {
error.value = true;
diff --git a/server/api/ai/loadCustomGroqApi.ts b/server/api/ai/loadCustomGroqApi.ts
new file mode 100644
index 0000000..62719d0
--- /dev/null
+++ b/server/api/ai/loadCustomGroqApi.ts
@@ -0,0 +1,21 @@
+import sql from "~/server/components/postgres";
+export default defineEventHandler(async (event) => {
+ if (event.method !== "POST") {
+ return {
+ error: "ERR_METHOD_NOT_ALLOWED",
+ };
+ }
+ const body = readBody(event);
+ if (!body.apiKey) {
+ return {
+ error: "ERR_API_KEY_REQUIRED",
+ };
+ }
+ const readUserToken = getCookie(event, "token");
+ if (!readUserToken) {
+ return {
+ error: "ERR_NOT_USER_LOGIN",
+ };
+ }
+ const checkUser = await sql``;
+});
diff --git a/server/api/publishers/lt/[slug].ts b/server/api/publishers/lt/[slug].ts
index 7b9a6de..81028f2 100644
--- a/server/api/publishers/lt/[slug].ts
+++ b/server/api/publishers/lt/[slug].ts
@@ -29,15 +29,16 @@ export default defineEventHandler(async (event) => {
html("div.editor div figure img").attr("src") ||
"";
const articles = [];
- const otherArticles = html("section.moduleContainer div");
- for (const item in otherArticles) {
-
- }
+ const otherArticles = html("section.moduleContainer div").html();
+ /*for (const item in otherArticles) {
+ console.log(item);
+ console.log("-");
+ }*/
return {
name: newsOrgName,
description: description,
logo: logo,
- articles: []
+ articles: otherArticles,
};
} catch (e) {
console.log(e);
diff --git a/server/api/user/login.ts b/server/api/user/login.ts
index af2eaa0..03eb3b1 100644
--- a/server/api/user/login.ts
+++ b/server/api/user/login.ts
@@ -68,9 +68,9 @@ export default defineEventHandler(async (event) => {
INSERT INTO usertokens (user, token)
VALUES ('${fetchUserInfo[0].username}', '${newToken}')
`;
+ setCookie(event, "token", newToken);
return {
user: fetchUserInfoAgain,
- token: newToken,
};
} catch (e) {
console.log(e);
diff --git a/server/api/user/logout.ts b/server/api/user/logout.ts
index a632ce0..2cef4b0 100644
--- a/server/api/user/logout.ts
+++ b/server/api/user/logout.ts
@@ -4,12 +4,7 @@ export default defineEventHandler(async (event) => {
const nowDate = new Date().toLocaleString();
try {
if (loginCookie) {
- deleteCookie(event, "session");
- setCookie(event, "lastCheckCookie", nowDate, {
- httpOnly: true,
- secure: process.env.NODE_ENV === "production",
- path: "/",
- });
+ deleteCookie(event, "token");
return {
success: true,
error: null,
diff --git a/server/api/user/validateUserToken.post.ts b/server/api/user/validateUserToken.post.ts
index 405aef7..3873f5c 100644
--- a/server/api/user/validateUserToken.post.ts
+++ b/server/api/user/validateUserToken.post.ts
@@ -2,11 +2,11 @@ import sql from "~/server/components/postgres";
export default defineEventHandler(async (event) => {
const body = await readBody(event);
- const token = body.token;
+ const token = getCookie(event, "token");
if (!token) {
return {
- error: "NO_TOKEN_GIVEN",
- requested_action: "SHOW_WARNING",
+ error: "INVALID_TOKEN",
+ requested_action: "LOGOUT_USER",
};
}
const checkIsUUIDRegex =