Ver Fonte

还原jwt-cookie和代理接口代码

fogwind há 1 semana atrás
pai
commit
e79316851d
2 ficheiros alterados com 9 adições e 11 exclusões
  1. 3 3
      src/app/api/graphql/route.ts
  2. 6 8
      src/utils/jwt-cookie.ts

+ 3 - 3
src/app/api/graphql/route.ts

@@ -17,7 +17,7 @@ import {
     CREATE_CHECKOUT_PAYMENT_METHODS,
     CREATE_CHECKOUT_ORDER,
     CREATE_PRODUCT_REVIEW,
-    GET_PRODUCT_BY_URL_KEY
+    GET_PRODUCT_BY_URL_KEY,
 } from "@/graphql";
 
 const ALLOWED_OPERATIONS: Record<string, any> = {
@@ -50,8 +50,8 @@ export async function POST(req: NextRequest) {
                 { status: 400 }
             );
         }
-        // const query = ALLOWED_OPERATIONS[operationName];
-        const query = bodyGraphqlQuery; // 核心修复
+        const query = ALLOWED_OPERATIONS[operationName];
+        // const query = bodyGraphqlQuery; // 核心修复
 
         let finalVariables = variables;
 

+ 6 - 8
src/utils/jwt-cookie.ts

@@ -1,5 +1,5 @@
 // import { NEXT_AUTH_SECRET } from "./constants";
-
+// 
 export const encodeJWT = (payload: object): string => {
   try {
     const jsonStr = JSON.stringify(payload);
@@ -8,7 +8,7 @@ export const encodeJWT = (payload: object): string => {
     const header = btoa(JSON.stringify({ alg: "none", typ: "JWT" }));
 
     // const token = `${header}.${encodedPayload}.${NEXT_AUTH_SECRET}`;
-    const token = `${encodedPayload}`;
+    const token = `${header}.${encodedPayload}`;
 
     return encodeURIComponent(token);
   } catch (e) {
@@ -25,19 +25,17 @@ export const decodeJWT = <T = any>(token: string, isGuest: boolean = true): T |
     }
 
     const decodedToken = decodeURIComponent(token);
-    /*
     const parts = decodedToken.split(".");
 
-    if (parts.length !== 3) {
-      return null;
-    }
+    // if (parts.length !== 2) {
+    //   return null;
+    // }
 
     const payloadPart = parts[1];
     if (!payloadPart) return null;
 
     const jsonStr = decodeURIComponent(atob(payloadPart));
-    */
-    const jsonStr = decodeURIComponent(atob(decodedToken));
+    console.log("jsonStr", jsonStr);
     return JSON.parse(jsonStr) as T;
   } catch (e) {
     console.warn("Error decoding JWT:", e);