در حال دریافت اطلاعات...
3 ماه قبل
برای اینکار شما اول یک secret key تعریف میکنید، پس از آن دو فانکشن برای encrypt و decrypt میسازید و در جای جای پروژه از آن استفاده میکنید.
asfasfasfasf
asfsadfsdf
asdfsdfsdf
import { SignJWT, jwtVerify } from "jose";
const secretKey = process.env.SESSION_SECRET;
const encodedKey = new TextEncoder().encode(secretKey);
export async function encrypt(payload: SessionPayload) {
return new SignJWT(payload)
.setProtectedHeader({ alg: "HS256" })
.setIssuedAt()
.setExpirationTime("7d")
.sign(encodedKey);
}
export async function decrypt(session: string | undefined = "") {
try {
const { payload } = await jwtVerify(session, encodedKey, {
algorithms: ["HS256"],
});
return payload;
} catch {
return null;
}
}
3 ماه قبل
یه قطعه کد کاربردی برای مدیریت لینک صفحات برنامتون آوردم.
شما میتونین یک متغی