CARVIEW |
Select Language
HTTP/2 200
date: Sat, 11 Oct 2025 06:06:23 GMT
content-type: text/html; charset=UTF-8
server: cloudflare
x-frame-options: DENY
x-content-type-options: nosniff
x-xss-protection: 1;mode=block
vary: accept-encoding
cf-cache-status: DYNAMIC
content-encoding: gzip
set-cookie: _csrf-frontend=2c7ce44b1cafa2b20a969d6eef9fa972fdbe6466e690422448aaf1212a49f9eea%3A2%3A%7Bi%3A0%3Bs%3A14%3A%22_csrf-frontend%22%3Bi%3A1%3Bs%3A32%3A%22CiaO1NCs2FahZA1XE9fEADxYt7S12G2V%22%3B%7D; HttpOnly; Path=/
cf-ray: 98cc2bd43c7c1712-BLR
@/actions/get-user-sessions.action.ts - Pastebin.com
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- "use server"
- import { cookies } from "next/headers"
- import { WebSessionType, PersonalAccessTokenType } from "@/types/auth"
- import { fetchBackend } from "@/lib/utils"
- /**
- * Fetches the current user's active web sessions and personal access tokens from the backend.
- *
- * @returns {Promise<{ webSessions: WebSessionType[] | null; personalAccessTokens: PersonalAccessTokenType[] | null }>} the web sessions and personal access tokens related to the given user.
- */
- export async function getUserSessions(): Promise<{
- webSessions: WebSessionType[] | null
- personalAccessTokens: PersonalAccessTokenType[] | null
- }> {
- const cookieList = await cookies()
- const laravelSessionCookie = cookieList.get('laravel_session')?.value
- const xsrfToken = cookieList.get('XSRF-TOKEN')?.value
- if (!laravelSessionCookie) {
- console.warn("No Laravel session cookie found. Cannot fetch user sessions.")
- return { webSessions: null, personalAccessTokens: null }
- }
- let webSessions: WebSessionType[] | null = null
- let personalAccessTokens: PersonalAccessTokenType[] | null = null
- // Fetch and convert web sessions to camelCase
- /* try {
- const webSessionsRes = await fetchBackend(
- "/api/user/web-sessions", "GET",
- {}, undefined, xsrfToken
- )
- if (!webSessionsRes || !webSessionsRes.ok) {
- const errorBody = await webSessionsRes?.text()
- console.error(`Failed to fetch web sessions: ${webSessionsRes?.status} ${webSessionsRes?.statusText}`)
- console.error("Error response body:", errorBody)
- } else {
- const rawWebSessionsData: any[] = await webSessionsRes.json()
- webSessions = rawWebSessionsData.map(rawSession => ({
- _id: rawSession._id,
- payload: rawSession.payload,
- lastActivity: new Date(rawSession.last_activity * 1000),
- userId: rawSession.user_id,
- ipAddress: rawSession.ip_address,
- userAgent: rawSession.user_agent,
- expiresAt: rawSession.expires_at ? new Date(rawSession.expires_at) : null,
- }))
- }
- } catch (error) {
- console.error("Error fetching web sessions:", error)
- }
- */
- // Fetch and convert pats to camelCase
- try {
- const patRes = await fetchBackend(
- "/api/user/personal-access-tokens", "GET",
- {}, undefined, xsrfToken
- )
- if (!patRes || !patRes.ok) {
- const errorBody = await patRes?.text()
- console.error(`Failed to fetch personal access tokens: ${patRes?.status} ${patRes?.statusText}`)
- console.error("Error response body:", errorBody)
- } else {
- const rawPatData: any[] = await patRes.json()
- personalAccessTokens = rawPatData.map(rawToken => ({
- _id: rawToken._id.$oid,
- name: rawToken.name,
- abilities: JSON.parse(rawToken.abilities) as string[],
- expiresAt: rawToken.expires_at ? new Date(rawToken.expires_at) : null,
- updatedAt: new Date(rawToken.updated_at),
- createdAt: new Date(rawToken.created_at),
- lastUsedAt: rawToken.last_used_at ? new Date(rawToken.last_used_at) : null,
- tokenableId: rawToken.tokenable_id.$oid,
- tokenableType: rawToken.tokenable_type
- }))
- }
- } catch (error) {
- console.error("Error fetching personal access tokens:", error)
- }
- return { webSessions, personalAccessTokens }
- }
Advertisement
Add Comment
Please, Sign In to add comment
-
⭐⭐⭐GMAIL Logs (2FA disabled)⭐⭐
Java | 1 sec ago | 0.10 KB
-
⭐✅ MAKE $2500 IN 15 MIN⭐⭐⭐ O
JavaScript | 3 sec ago | 0.24 KB
-
✅⭐ Make $2500 in 15 minutes ✅ NEVER SEEN BEFO...
JavaScript | 4 sec ago | 0.24 KB
-
⭐✅ Exploit 2500$ in 15 Minutes⭐⭐⭐ 8
JavaScript | 14 sec ago | 0.24 KB
-
✅⭐ Make huge profits on trading ⭐⭐ 4
JavaScript | 14 sec ago | 0.24 KB
-
⭐⭐⭐Make $15OO in 2O minutesV G⭐⭐
Java | 15 sec ago | 0.10 KB
-
⭐⭐⭐ G2A Payment Exploit ✅ NEVER SEEN BEFORE ⭐...
JavaScript | 18 sec ago | 0.24 KB
-
Free Crypto Method (NEVER SEEN BEFORE)⭐⭐ C
JavaScript | 25 sec ago | 0.24 KB
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand