kv-tube/frontend/frontend.log
2026-03-26 13:11:20 +07:00

1921 lines
69 KiB
Text

> frontend@0.1.0 dev
> next dev
▲ Next.js 16.1.6 (Turbopack)
- Local: http://localhost:3000
- Network: http://192.168.31.138:3000
- Environments: .env.local
✓ Starting...
✓ Ready in 1188ms
GET /watch?v=krbtaBr9jNc 200 in 572ms (compile: 273ms, render: 299ms)
GET / 200 in 59ms (compile: 35ms, render: 24ms)
GET /feed/subscriptions 200 in 61ms (compile: 41ms, render: 20ms)
GET /feed/library 200 in 416ms (compile: 349ms, render: 67ms)
GET /feed/library 200 in 51ms (compile: 8ms, render: 43ms)
GET /feed/library 200 in 127ms (compile: 4ms, render: 122ms)
GET /watch?v=sZrIbpwjTwk 200 in 25ms (compile: 6ms, render: 19ms)
GET /feed/subscriptions 200 in 81ms (compile: 14ms, render: 68ms)
GET /feed/subscriptions 200 in 195ms (compile: 8ms, render: 188ms)
GET /feed/subscriptions 200 in 64ms (compile: 9ms, render: 55ms)
GET /watch?v=X8dM9elNhAM 200 in 149ms (compile: 122ms, render: 27ms)
✓ Compiled in 62ms
✓ Compiled in 42ms
✓ Compiled in 37ms
✓ Compiled in 93ms
GET /watch?v=X8dM9elNhAM 200 in 441ms (compile: 124ms, render: 316ms)
GET / 200 in 30ms (compile: 6ms, render: 24ms)
GET / 200 in 39ms (compile: 7ms, render: 32ms)
GET /watch?v=OsfAnsMY21M 200 in 34ms (compile: 6ms, render: 28ms)
✓ Compiled in 53ms
GET /watch?v=OsfAnsMY21M 200 in 431ms (compile: 86ms, render: 345ms)
GET /watch?v=OsfAnsMY21M 200 in 186ms (compile: 11ms, render: 175ms)
GET / 200 in 36ms (compile: 6ms, render: 30ms)
GET /feed/subscriptions 200 in 128ms (compile: 98ms, render: 30ms)
GET / 200 in 21ms (compile: 4ms, render: 16ms)
✓ Compiled in 110ms
✓ Compiled in 49ms
✓ Compiled in 81ms
✓ Compiled in 28ms
GET /watch?v=KKFubczfTOs 200 in 141ms (compile: 93ms, render: 48ms)
✓ Compiled in 455ms
✓ Compiled in 88ms
GET /watch?v=KKFubczfTOs 200 in 972ms (compile: 216ms, render: 756ms)
GET /watch?v=KKFubczfTOs 200 in 409ms (compile: 106ms, render: 303ms)
GET /watch?v=KKFubczfTOs 200 in 184ms (compile: 4ms, render: 180ms)
GET /watch?v=KKFubczfTOs 200 in 136ms (compile: 12ms, render: 124ms)
GET /watch?v=KKFubczfTOs 200 in 120ms (compile: 5ms, render: 115ms)
GET /watch?v=KKFubczfTOs 200 in 102ms (compile: 3ms, render: 99ms)
GET /watch?v=KKFubczfTOs 200 in 103ms (compile: 2ms, render: 101ms)
GET /watch?v=KKFubczfTOs 200 in 105ms (compile: 3ms, render: 102ms)
GET /watch?v=KKFubczfTOs 200 in 105ms (compile: 3ms, render: 101ms)
GET /watch?v=KKFubczfTOs 200 in 108ms (compile: 3ms, render: 105ms)
GET /watch?v=KKFubczfTOs 200 in 109ms (compile: 3ms, render: 106ms)
GET /watch?v=KKFubczfTOs 200 in 106ms (compile: 3ms, render: 103ms)
GET /watch?v=KKFubczfTOs 200 in 109ms (compile: 5ms, render: 104ms)
GET /watch?v=KKFubczfTOs 200 in 108ms (compile: 5ms, render: 104ms)
GET /watch?v=KKFubczfTOs 200 in 117ms (compile: 5ms, render: 112ms)
GET /watch?v=KKFubczfTOs 200 in 113ms (compile: 4ms, render: 109ms)
GET /watch?v=KKFubczfTOs 200 in 114ms (compile: 4ms, render: 110ms)
GET /watch?v=KKFubczfTOs 200 in 114ms (compile: 4ms, render: 110ms)
GET /watch?v=KKFubczfTOs 200 in 114ms (compile: 3ms, render: 112ms)
GET /watch?v=KKFubczfTOs 200 in 108ms (compile: 4ms, render: 104ms)
GET /watch?v=KKFubczfTOs 200 in 106ms (compile: 3ms, render: 103ms)
GET /watch?v=KKFubczfTOs 200 in 90ms (compile: 5ms, render: 85ms)
GET /watch?v=KKFubczfTOs 200 in 64ms (compile: 3ms, render: 62ms)
GET /watch?v=KKFubczfTOs 200 in 47ms (compile: 3ms, render: 44ms)
GET /watch?v=KKFubczfTOs 200 in 31ms (compile: 4ms, render: 27ms)
GET /watch?v=KKFubczfTOs 200 in 197ms (compile: 79ms, render: 118ms)
GET /watch?v=KKFubczfTOs 200 in 107ms (compile: 2ms, render: 105ms)
GET /watch?v=KKFubczfTOs 200 in 127ms (compile: 2ms, render: 125ms)
GET /watch?v=KKFubczfTOs 200 in 144ms (compile: 3ms, render: 142ms)
GET /watch?v=KKFubczfTOs 200 in 168ms (compile: 3ms, render: 166ms)
GET /watch?v=KKFubczfTOs 200 in 202ms (compile: 5ms, render: 197ms)
GET /watch?v=KKFubczfTOs 200 in 232ms (compile: 5ms, render: 227ms)
GET /watch?v=KKFubczfTOs 200 in 522ms (compile: 9ms, render: 514ms)
GET /watch?v=KKFubczfTOs 200 in 548ms (compile: 4ms, render: 544ms)
GET /watch?v=KKFubczfTOs 200 in 546ms (compile: 8ms, render: 538ms)
GET /watch?v=KKFubczfTOs 200 in 527ms (compile: 5ms, render: 522ms)
GET /watch?v=KKFubczfTOs 200 in 533ms (compile: 12ms, render: 521ms)
GET /watch?v=KKFubczfTOs 200 in 300ms (compile: 50ms, render: 249ms)
GET /watch?v=KKFubczfTOs 200 in 258ms (compile: 9ms, render: 248ms)
GET /watch?v=KKFubczfTOs 200 in 263ms (compile: 4ms, render: 259ms)
GET /watch?v=KKFubczfTOs 200 in 276ms (compile: 7ms, render: 268ms)
GET /watch?v=KKFubczfTOs 200 in 275ms (compile: 16ms, render: 259ms)
GET /watch?v=KKFubczfTOs 200 in 225ms (compile: 5ms, render: 221ms)
GET /watch?v=KKFubczfTOs 200 in 260ms (compile: 8ms, render: 252ms)
GET /watch?v=KKFubczfTOs 200 in 216ms (compile: 7ms, render: 208ms)
GET /watch?v=KKFubczfTOs 200 in 202ms (compile: 6ms, render: 196ms)
GET /watch?v=KKFubczfTOs 200 in 196ms (compile: 8ms, render: 188ms)
GET /watch?v=KKFubczfTOs 200 in 167ms (compile: 10ms, render: 157ms)
GET /watch?v=KKFubczfTOs 200 in 126ms (compile: 5ms, render: 121ms)
GET /watch?v=KKFubczfTOs 200 in 95ms (compile: 7ms, render: 88ms)
GET /watch?v=KKFubczfTOs 200 in 58ms (compile: 7ms, render: 51ms)
GET /watch?v=KKFubczfTOs 200 in 303ms (compile: 3ms, render: 300ms)
✓ Compiled in 23ms
GET /api/proxy/invidious?path=comments&videoId=KKFubczfTOs&limit=50 200 in 15.0s (compile: 951ms, render: 14.0s)
All Invidious instances failed: [
Error: HTTP 502
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/invidious/route.ts:67:20)
65 | }
66 |
> 67 | const data = await response.json();
| ^
68 | return NextResponse.json(data);
69 | } catch (error: any) {
70 | errors.push(error);,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND invidious.fdn.fr
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'invidious.fdn.fr'
}
},
Error [TimeoutError]: The operation was aborted due to timeout
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
code: 23,
INDEX_SIZE_ERR: 1,
DOMSTRING_SIZE_ERR: 2,
HIERARCHY_REQUEST_ERR: 3,
WRONG_DOCUMENT_ERR: 4,
INVALID_CHARACTER_ERR: 5,
NO_DATA_ALLOWED_ERR: 6,
NO_MODIFICATION_ALLOWED_ERR: 7,
NOT_FOUND_ERR: 8,
NOT_SUPPORTED_ERR: 9,
INUSE_ATTRIBUTE_ERR: 10,
INVALID_STATE_ERR: 11,
SYNTAX_ERR: 12,
INVALID_MODIFICATION_ERR: 13,
NAMESPACE_ERR: 14,
INVALID_ACCESS_ERR: 15,
VALIDATION_ERR: 16,
TYPE_MISMATCH_ERR: 17,
SECURITY_ERR: 18,
NETWORK_ERR: 19,
ABORT_ERR: 20,
URL_MISMATCH_ERR: 21,
QUOTA_EXCEEDED_ERR: 22,
TIMEOUT_ERR: 23,
INVALID_NODE_TYPE_ERR: 24,
DATA_CLONE_ERR: 25
},
Error: HTTP 404
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();
]
All Invidious instances failed: [
Error: HTTP 502
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/invidious/route.ts:67:20)
65 | }
66 |
> 67 | const data = await response.json();
| ^
68 | return NextResponse.json(data);
69 | } catch (error: any) {
70 | errors.push(error);,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND invidious.fdn.fr
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'invidious.fdn.fr'
}
},
Error [TimeoutError]: The operation was aborted due to timeout
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
code: 23,
INDEX_SIZE_ERR: 1,
DOMSTRING_SIZE_ERR: 2,
HIERARCHY_REQUEST_ERR: 3,
WRONG_DOCUMENT_ERR: 4,
INVALID_CHARACTER_ERR: 5,
NO_DATA_ALLOWED_ERR: 6,
NO_MODIFICATION_ALLOWED_ERR: 7,
NOT_FOUND_ERR: 8,
NOT_SUPPORTED_ERR: 9,
INUSE_ATTRIBUTE_ERR: 10,
INVALID_STATE_ERR: 11,
SYNTAX_ERR: 12,
INVALID_MODIFICATION_ERR: 13,
NAMESPACE_ERR: 14,
INVALID_ACCESS_ERR: 15,
VALIDATION_ERR: 16,
TYPE_MISMATCH_ERR: 17,
SECURITY_ERR: 18,
NETWORK_ERR: 19,
ABORT_ERR: 20,
URL_MISMATCH_ERR: 21,
QUOTA_EXCEEDED_ERR: 22,
TIMEOUT_ERR: 23,
INVALID_NODE_TYPE_ERR: 24,
DATA_CLONE_ERR: 25
},
Error: HTTP 404
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();
]
✓ Compiled in 40ms
GET /watch?v=KKFubczfTOs 200 in 885ms (compile: 97ms, render: 788ms)
GET /api/proxy/invidious?path=video&videoId=KKFubczfTOs 200 in 14.9s (compile: 18ms, render: 14.9s)
All Invidious instances failed: [
Error: HTTP 502
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/invidious/route.ts:67:20)
65 | }
66 |
> 67 | const data = await response.json();
| ^
68 | return NextResponse.json(data);
69 | } catch (error: any) {
70 | errors.push(error);,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND invidious.fdn.fr
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'invidious.fdn.fr'
}
},
Error [TimeoutError]: The operation was aborted due to timeout
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
code: 23,
INDEX_SIZE_ERR: 1,
DOMSTRING_SIZE_ERR: 2,
HIERARCHY_REQUEST_ERR: 3,
WRONG_DOCUMENT_ERR: 4,
INVALID_CHARACTER_ERR: 5,
NO_DATA_ALLOWED_ERR: 6,
NO_MODIFICATION_ALLOWED_ERR: 7,
NOT_FOUND_ERR: 8,
NOT_SUPPORTED_ERR: 9,
INUSE_ATTRIBUTE_ERR: 10,
INVALID_STATE_ERR: 11,
SYNTAX_ERR: 12,
INVALID_MODIFICATION_ERR: 13,
NAMESPACE_ERR: 14,
INVALID_ACCESS_ERR: 15,
VALIDATION_ERR: 16,
TYPE_MISMATCH_ERR: 17,
SECURITY_ERR: 18,
NETWORK_ERR: 19,
ABORT_ERR: 20,
URL_MISMATCH_ERR: 21,
QUOTA_EXCEEDED_ERR: 22,
TIMEOUT_ERR: 23,
INVALID_NODE_TYPE_ERR: 24,
DATA_CLONE_ERR: 25
},
Error: HTTP 404
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();
]
All Piped instances failed: [
Error: HTTP 502
at GET (app/api/proxy/piped/route.ts:42:15)
40 |
41 | if (!response.ok) {
> 42 | throw new Error(`HTTP ${response.status}`);
| ^
43 | }
44 |
45 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/piped/route.ts:34:24)
32 | for (const instance of PIPED_INSTANCES) {
33 | try {
> 34 | const response = await fetch(`${instance}${apiPath}`, {
| ^
35 | signal: AbortSignal.timeout(10000),
36 | headers: {
37 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND adminforge.destreams
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'adminforge.destreams'
}
},
SyntaxError: Unexpected token 'P', "Piped has shutdown" is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/piped/route.ts:45:20)
43 | }
44 |
> 45 | const data = await response.json();
| ^
46 | return NextResponse.json(data);
47 | } catch (error: any) {
48 | errors.push(error);
]
GET /api/proxy/piped?path=streams&videoId=KKFubczfTOs 502 in 3.0s (compile: 148ms, render: 2.9s)
GET / 200 in 133ms (compile: 98ms, render: 35ms)
GET /api/proxy/invidious?path=trending&region=VN 200 in 2.7s (compile: 11ms, render: 2.7s)
GET /api/proxy/invidious?path=search&q=+music&type=video&limit=20 200 in 14.6s (compile: 2ms, render: 14.6s)
GET /api/proxy/invidious?path=search&q=music+mix+compilation&type=video&limit=20 200 in 14.6s (compile: 1986µs, render: 14.6s)
GET / 200 in 307ms (compile: 3ms, render: 304ms)
All Invidious instances failed: [
Error: HTTP 502
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/invidious/route.ts:67:20)
65 | }
66 |
> 67 | const data = await response.json();
| ^
68 | return NextResponse.json(data);
69 | } catch (error: any) {
70 | errors.push(error);,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND invidious.fdn.fr
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'invidious.fdn.fr'
}
},
Error [TimeoutError]: The operation was aborted due to timeout
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
code: 23,
INDEX_SIZE_ERR: 1,
DOMSTRING_SIZE_ERR: 2,
HIERARCHY_REQUEST_ERR: 3,
WRONG_DOCUMENT_ERR: 4,
INVALID_CHARACTER_ERR: 5,
NO_DATA_ALLOWED_ERR: 6,
NO_MODIFICATION_ALLOWED_ERR: 7,
NOT_FOUND_ERR: 8,
NOT_SUPPORTED_ERR: 9,
INUSE_ATTRIBUTE_ERR: 10,
INVALID_STATE_ERR: 11,
SYNTAX_ERR: 12,
INVALID_MODIFICATION_ERR: 13,
NAMESPACE_ERR: 14,
INVALID_ACCESS_ERR: 15,
VALIDATION_ERR: 16,
TYPE_MISMATCH_ERR: 17,
SECURITY_ERR: 18,
NETWORK_ERR: 19,
ABORT_ERR: 20,
URL_MISMATCH_ERR: 21,
QUOTA_EXCEEDED_ERR: 22,
TIMEOUT_ERR: 23,
INVALID_NODE_TYPE_ERR: 24,
DATA_CLONE_ERR: 25
},
Error: HTTP 404
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();
]
All Invidious instances failed: [
Error: HTTP 502
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/invidious/route.ts:67:20)
65 | }
66 |
> 67 | const data = await response.json();
| ^
68 | return NextResponse.json(data);
69 | } catch (error: any) {
70 | errors.push(error);,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND invidious.fdn.fr
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'invidious.fdn.fr'
}
},
Error [TimeoutError]: The operation was aborted due to timeout
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
code: 23,
INDEX_SIZE_ERR: 1,
DOMSTRING_SIZE_ERR: 2,
HIERARCHY_REQUEST_ERR: 3,
WRONG_DOCUMENT_ERR: 4,
INVALID_CHARACTER_ERR: 5,
NO_DATA_ALLOWED_ERR: 6,
NO_MODIFICATION_ALLOWED_ERR: 7,
NOT_FOUND_ERR: 8,
NOT_SUPPORTED_ERR: 9,
INUSE_ATTRIBUTE_ERR: 10,
INVALID_STATE_ERR: 11,
SYNTAX_ERR: 12,
INVALID_MODIFICATION_ERR: 13,
NAMESPACE_ERR: 14,
INVALID_ACCESS_ERR: 15,
VALIDATION_ERR: 16,
TYPE_MISMATCH_ERR: 17,
SECURITY_ERR: 18,
NETWORK_ERR: 19,
ABORT_ERR: 20,
URL_MISMATCH_ERR: 21,
QUOTA_EXCEEDED_ERR: 22,
TIMEOUT_ERR: 23,
INVALID_NODE_TYPE_ERR: 24,
DATA_CLONE_ERR: 25
},
Error: HTTP 404
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();
]
All Invidious instances failed: [
Error: HTTP 502
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/invidious/route.ts:67:20)
65 | }
66 |
> 67 | const data = await response.json();
| ^
68 | return NextResponse.json(data);
69 | } catch (error: any) {
70 | errors.push(error);,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND invidious.fdn.fr
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'invidious.fdn.fr'
}
},
Error [TimeoutError]: The operation was aborted due to timeout
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
code: 23,
INDEX_SIZE_ERR: 1,
DOMSTRING_SIZE_ERR: 2,
HIERARCHY_REQUEST_ERR: 3,
WRONG_DOCUMENT_ERR: 4,
INVALID_CHARACTER_ERR: 5,
NO_DATA_ALLOWED_ERR: 6,
NO_MODIFICATION_ALLOWED_ERR: 7,
NOT_FOUND_ERR: 8,
NOT_SUPPORTED_ERR: 9,
INUSE_ATTRIBUTE_ERR: 10,
INVALID_STATE_ERR: 11,
SYNTAX_ERR: 12,
INVALID_MODIFICATION_ERR: 13,
NAMESPACE_ERR: 14,
INVALID_ACCESS_ERR: 15,
VALIDATION_ERR: 16,
TYPE_MISMATCH_ERR: 17,
SECURITY_ERR: 18,
NETWORK_ERR: 19,
ABORT_ERR: 20,
URL_MISMATCH_ERR: 21,
QUOTA_EXCEEDED_ERR: 22,
TIMEOUT_ERR: 23,
INVALID_NODE_TYPE_ERR: 24,
DATA_CLONE_ERR: 25
},
Error: HTTP 404
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();
]
All Invidious instances failed: [
Error: HTTP 502
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/invidious/route.ts:67:20)
65 | }
66 |
> 67 | const data = await response.json();
| ^
68 | return NextResponse.json(data);
69 | } catch (error: any) {
70 | errors.push(error);,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND invidious.fdn.fr
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'invidious.fdn.fr'
}
},
Error [TimeoutError]: The operation was aborted due to timeout
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
code: 23,
INDEX_SIZE_ERR: 1,
DOMSTRING_SIZE_ERR: 2,
HIERARCHY_REQUEST_ERR: 3,
WRONG_DOCUMENT_ERR: 4,
INVALID_CHARACTER_ERR: 5,
NO_DATA_ALLOWED_ERR: 6,
NO_MODIFICATION_ALLOWED_ERR: 7,
NOT_FOUND_ERR: 8,
NOT_SUPPORTED_ERR: 9,
INUSE_ATTRIBUTE_ERR: 10,
INVALID_STATE_ERR: 11,
SYNTAX_ERR: 12,
INVALID_MODIFICATION_ERR: 13,
NAMESPACE_ERR: 14,
INVALID_ACCESS_ERR: 15,
VALIDATION_ERR: 16,
TYPE_MISMATCH_ERR: 17,
SECURITY_ERR: 18,
NETWORK_ERR: 19,
ABORT_ERR: 20,
URL_MISMATCH_ERR: 21,
QUOTA_EXCEEDED_ERR: 22,
TIMEOUT_ERR: 23,
INVALID_NODE_TYPE_ERR: 24,
DATA_CLONE_ERR: 25
},
Error: HTTP 404
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();
]
GET /api/proxy/invidious?path=trending&region=VN 502 in 15.5s (compile: 11ms, render: 15.5s)
GET /api/proxy/invidious?path=trending&region=VN 200 in 10.7s (compile: 3ms, render: 10.7s)
GET / 200 in 61ms (compile: 7ms, render: 55ms)
GET /feed/subscriptions 200 in 123ms (compile: 88ms, render: 35ms)
All Invidious instances failed: [
Error: HTTP 502
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/invidious/route.ts:67:20)
65 | }
66 |
> 67 | const data = await response.json();
| ^
68 | return NextResponse.json(data);
69 | } catch (error: any) {
70 | errors.push(error);,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND invidious.fdn.fr
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'invidious.fdn.fr'
}
},
Error [TimeoutError]: The operation was aborted due to timeout
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
code: 23,
INDEX_SIZE_ERR: 1,
DOMSTRING_SIZE_ERR: 2,
HIERARCHY_REQUEST_ERR: 3,
WRONG_DOCUMENT_ERR: 4,
INVALID_CHARACTER_ERR: 5,
NO_DATA_ALLOWED_ERR: 6,
NO_MODIFICATION_ALLOWED_ERR: 7,
NOT_FOUND_ERR: 8,
NOT_SUPPORTED_ERR: 9,
INUSE_ATTRIBUTE_ERR: 10,
INVALID_STATE_ERR: 11,
SYNTAX_ERR: 12,
INVALID_MODIFICATION_ERR: 13,
NAMESPACE_ERR: 14,
INVALID_ACCESS_ERR: 15,
VALIDATION_ERR: 16,
TYPE_MISMATCH_ERR: 17,
SECURITY_ERR: 18,
NETWORK_ERR: 19,
ABORT_ERR: 20,
URL_MISMATCH_ERR: 21,
QUOTA_EXCEEDED_ERR: 22,
TIMEOUT_ERR: 23,
INVALID_NODE_TYPE_ERR: 24,
DATA_CLONE_ERR: 25
},
Error: HTTP 404
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();
]
GET / 200 in 13ms (compile: 2ms, render: 11ms)
GET /feed/library 200 in 50ms (compile: 29ms, render: 21ms)
GET /watch?v=HXkh7EOqcQ4 200 in 32ms (compile: 5ms, render: 28ms)
GET /api/proxy/invidious?path=trending&region=VN 200 in 14.9s (compile: 104ms, render: 14.8s)
All Invidious instances failed: [
Error: HTTP 502
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/invidious/route.ts:67:20)
65 | }
66 |
> 67 | const data = await response.json();
| ^
68 | return NextResponse.json(data);
69 | } catch (error: any) {
70 | errors.push(error);,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND invidious.fdn.fr
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'invidious.fdn.fr'
}
},
Error [TimeoutError]: The operation was aborted due to timeout
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
code: 23,
INDEX_SIZE_ERR: 1,
DOMSTRING_SIZE_ERR: 2,
HIERARCHY_REQUEST_ERR: 3,
WRONG_DOCUMENT_ERR: 4,
INVALID_CHARACTER_ERR: 5,
NO_DATA_ALLOWED_ERR: 6,
NO_MODIFICATION_ALLOWED_ERR: 7,
NOT_FOUND_ERR: 8,
NOT_SUPPORTED_ERR: 9,
INUSE_ATTRIBUTE_ERR: 10,
INVALID_STATE_ERR: 11,
SYNTAX_ERR: 12,
INVALID_MODIFICATION_ERR: 13,
NAMESPACE_ERR: 14,
INVALID_ACCESS_ERR: 15,
VALIDATION_ERR: 16,
TYPE_MISMATCH_ERR: 17,
SECURITY_ERR: 18,
NETWORK_ERR: 19,
ABORT_ERR: 20,
URL_MISMATCH_ERR: 21,
QUOTA_EXCEEDED_ERR: 22,
TIMEOUT_ERR: 23,
INVALID_NODE_TYPE_ERR: 24,
DATA_CLONE_ERR: 25
},
Error: HTTP 404
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();
]
GET /api/proxy/invidious?path=trending&region=VN 200 in 5.7s (compile: 3ms, render: 5.7s)
GET /api/proxy/invidious?path=video&videoId=HXkh7EOqcQ4 200 in 15.0s (compile: 1945µs, render: 15.0s)
GET /api/proxy/invidious?path=video&videoId=HXkh7EOqcQ4 200 in 5ms (compile: 1598µs, render: 4ms)
All Piped instances failed: [
Error: HTTP 502
at GET (app/api/proxy/piped/route.ts:42:15)
40 |
41 | if (!response.ok) {
> 42 | throw new Error(`HTTP ${response.status}`);
| ^
43 | }
44 |
45 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/piped/route.ts:34:24)
32 | for (const instance of PIPED_INSTANCES) {
33 | try {
> 34 | const response = await fetch(`${instance}${apiPath}`, {
| ^
35 | signal: AbortSignal.timeout(10000),
36 | headers: {
37 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND adminforge.destreams
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'adminforge.destreams'
}
},
SyntaxError: Unexpected token 'P', "Piped has shutdown" is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/piped/route.ts:45:20)
43 | }
44 |
> 45 | const data = await response.json();
| ^
46 | return NextResponse.json(data);
47 | } catch (error: any) {
48 | errors.push(error);
]
GET /api/proxy/piped?path=streams&videoId=HXkh7EOqcQ4 502 in 2.2s (compile: 1589µs, render: 2.2s)
All Invidious instances failed: [
Error: HTTP 502
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/invidious/route.ts:67:20)
65 | }
66 |
> 67 | const data = await response.json();
| ^
68 | return NextResponse.json(data);
69 | } catch (error: any) {
70 | errors.push(error);,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND invidious.fdn.fr
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'invidious.fdn.fr'
}
},
Error [TimeoutError]: The operation was aborted due to timeout
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
code: 23,
INDEX_SIZE_ERR: 1,
DOMSTRING_SIZE_ERR: 2,
HIERARCHY_REQUEST_ERR: 3,
WRONG_DOCUMENT_ERR: 4,
INVALID_CHARACTER_ERR: 5,
NO_DATA_ALLOWED_ERR: 6,
NO_MODIFICATION_ALLOWED_ERR: 7,
NOT_FOUND_ERR: 8,
NOT_SUPPORTED_ERR: 9,
INUSE_ATTRIBUTE_ERR: 10,
INVALID_STATE_ERR: 11,
SYNTAX_ERR: 12,
INVALID_MODIFICATION_ERR: 13,
NAMESPACE_ERR: 14,
INVALID_ACCESS_ERR: 15,
VALIDATION_ERR: 16,
TYPE_MISMATCH_ERR: 17,
SECURITY_ERR: 18,
NETWORK_ERR: 19,
ABORT_ERR: 20,
URL_MISMATCH_ERR: 21,
QUOTA_EXCEEDED_ERR: 22,
TIMEOUT_ERR: 23,
INVALID_NODE_TYPE_ERR: 24,
DATA_CLONE_ERR: 25
},
Error: HTTP 404
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();
]
All Piped instances failed: [
Error: HTTP 502
at GET (app/api/proxy/piped/route.ts:42:15)
40 |
41 | if (!response.ok) {
> 42 | throw new Error(`HTTP ${response.status}`);
| ^
43 | }
44 |
45 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/piped/route.ts:34:24)
32 | for (const instance of PIPED_INSTANCES) {
33 | try {
> 34 | const response = await fetch(`${instance}${apiPath}`, {
| ^
35 | signal: AbortSignal.timeout(10000),
36 | headers: {
37 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND adminforge.destreams
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'adminforge.destreams'
}
},
SyntaxError: Unexpected token 'P', "Piped has shutdown" is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/piped/route.ts:45:20)
43 | }
44 |
> 45 | const data = await response.json();
| ^
46 | return NextResponse.json(data);
47 | } catch (error: any) {
48 | errors.push(error);
]
GET /api/proxy/piped?path=streams&videoId=HXkh7EOqcQ4 502 in 1891ms (compile: 5ms, render: 1886ms)
All Invidious instances failed: [
Error: HTTP 502
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/invidious/route.ts:67:20)
65 | }
66 |
> 67 | const data = await response.json();
| ^
68 | return NextResponse.json(data);
69 | } catch (error: any) {
70 | errors.push(error);,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND invidious.fdn.fr
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'invidious.fdn.fr'
}
},
Error [TimeoutError]: The operation was aborted due to timeout
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
code: 23,
INDEX_SIZE_ERR: 1,
DOMSTRING_SIZE_ERR: 2,
HIERARCHY_REQUEST_ERR: 3,
WRONG_DOCUMENT_ERR: 4,
INVALID_CHARACTER_ERR: 5,
NO_DATA_ALLOWED_ERR: 6,
NO_MODIFICATION_ALLOWED_ERR: 7,
NOT_FOUND_ERR: 8,
NOT_SUPPORTED_ERR: 9,
INUSE_ATTRIBUTE_ERR: 10,
INVALID_STATE_ERR: 11,
SYNTAX_ERR: 12,
INVALID_MODIFICATION_ERR: 13,
NAMESPACE_ERR: 14,
INVALID_ACCESS_ERR: 15,
VALIDATION_ERR: 16,
TYPE_MISMATCH_ERR: 17,
SECURITY_ERR: 18,
NETWORK_ERR: 19,
ABORT_ERR: 20,
URL_MISMATCH_ERR: 21,
QUOTA_EXCEEDED_ERR: 22,
TIMEOUT_ERR: 23,
INVALID_NODE_TYPE_ERR: 24,
DATA_CLONE_ERR: 25
},
Error: HTTP 404
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();
]
GET / 200 in 24ms (compile: 5ms, render: 19ms)
GET / 200 in 459ms (compile: 154ms, render: 304ms)
GET / 200 in 327ms (compile: 11ms, render: 316ms)
GET / 200 in 259ms (compile: 38ms, render: 221ms)
GET / 200 in 154ms (compile: 5ms, render: 150ms)
GET / 200 in 135ms (compile: 6ms, render: 129ms)
GET / 200 in 141ms (compile: 6ms, render: 135ms)
GET / 200 in 149ms (compile: 5ms, render: 143ms)
GET / 200 in 135ms (compile: 5ms, render: 130ms)
GET / 200 in 117ms (compile: 12ms, render: 105ms)
GET / 200 in 98ms (compile: 6ms, render: 91ms)
GET / 200 in 96ms (compile: 5ms, render: 91ms)
GET / 200 in 98ms (compile: 5ms, render: 94ms)
GET / 200 in 103ms (compile: 4ms, render: 99ms)
GET / 200 in 112ms (compile: 7ms, render: 105ms)
GET / 200 in 147ms (compile: 4ms, render: 143ms)
GET / 200 in 176ms (compile: 6ms, render: 170ms)
GET / 200 in 184ms (compile: 7ms, render: 177ms)
GET / 200 in 161ms (compile: 8ms, render: 154ms)
GET / 200 in 133ms (compile: 4ms, render: 129ms)
GET / 200 in 112ms (compile: 8ms, render: 103ms)
GET / 200 in 113ms (compile: 3ms, render: 110ms)
GET / 200 in 108ms (compile: 8ms, render: 101ms)
GET / 200 in 104ms (compile: 4ms, render: 100ms)
GET / 200 in 73ms (compile: 4ms, render: 69ms)
GET / 200 in 52ms (compile: 4ms, render: 48ms)
GET /api/proxy/invidious?path=search&q=+music&type=video&limit=20 200 in 15.0s (compile: 3ms, render: 15.0s)
GET /api/proxy/invidious?path=search&q=music+mix+compilation&type=video&limit=20 200 in 15.0s (compile: 4ms, render: 15.0s)
(node:17664) [DEP0060] DeprecationWarning: The `util._extend` API is deprecated. Please use Object.assign() instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
All Invidious instances failed: [
Error: HTTP 502
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/invidious/route.ts:67:20)
65 | }
66 |
> 67 | const data = await response.json();
| ^
68 | return NextResponse.json(data);
69 | } catch (error: any) {
70 | errors.push(error);,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND invidious.fdn.fr
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'invidious.fdn.fr'
}
},
Error [TimeoutError]: The operation was aborted due to timeout
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
code: 23,
INDEX_SIZE_ERR: 1,
DOMSTRING_SIZE_ERR: 2,
HIERARCHY_REQUEST_ERR: 3,
WRONG_DOCUMENT_ERR: 4,
INVALID_CHARACTER_ERR: 5,
NO_DATA_ALLOWED_ERR: 6,
NO_MODIFICATION_ALLOWED_ERR: 7,
NOT_FOUND_ERR: 8,
NOT_SUPPORTED_ERR: 9,
INUSE_ATTRIBUTE_ERR: 10,
INVALID_STATE_ERR: 11,
SYNTAX_ERR: 12,
INVALID_MODIFICATION_ERR: 13,
NAMESPACE_ERR: 14,
INVALID_ACCESS_ERR: 15,
VALIDATION_ERR: 16,
TYPE_MISMATCH_ERR: 17,
SECURITY_ERR: 18,
NETWORK_ERR: 19,
ABORT_ERR: 20,
URL_MISMATCH_ERR: 21,
QUOTA_EXCEEDED_ERR: 22,
TIMEOUT_ERR: 23,
INVALID_NODE_TYPE_ERR: 24,
DATA_CLONE_ERR: 25
},
Error: HTTP 404
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();
]
All Invidious instances failed: [
Error: HTTP 502
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/invidious/route.ts:67:20)
65 | }
66 |
> 67 | const data = await response.json();
| ^
68 | return NextResponse.json(data);
69 | } catch (error: any) {
70 | errors.push(error);,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND invidious.fdn.fr
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'invidious.fdn.fr'
}
},
Error [TimeoutError]: The operation was aborted due to timeout
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
code: 23,
INDEX_SIZE_ERR: 1,
DOMSTRING_SIZE_ERR: 2,
HIERARCHY_REQUEST_ERR: 3,
WRONG_DOCUMENT_ERR: 4,
INVALID_CHARACTER_ERR: 5,
NO_DATA_ALLOWED_ERR: 6,
NO_MODIFICATION_ALLOWED_ERR: 7,
NOT_FOUND_ERR: 8,
NOT_SUPPORTED_ERR: 9,
INUSE_ATTRIBUTE_ERR: 10,
INVALID_STATE_ERR: 11,
SYNTAX_ERR: 12,
INVALID_MODIFICATION_ERR: 13,
NAMESPACE_ERR: 14,
INVALID_ACCESS_ERR: 15,
VALIDATION_ERR: 16,
TYPE_MISMATCH_ERR: 17,
SECURITY_ERR: 18,
NETWORK_ERR: 19,
ABORT_ERR: 20,
URL_MISMATCH_ERR: 21,
QUOTA_EXCEEDED_ERR: 22,
TIMEOUT_ERR: 23,
INVALID_NODE_TYPE_ERR: 24,
DATA_CLONE_ERR: 25
},
Error: HTTP 404
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();
]
All Invidious instances failed: [
Error: HTTP 502
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/invidious/route.ts:67:20)
65 | }
66 |
> 67 | const data = await response.json();
| ^
68 | return NextResponse.json(data);
69 | } catch (error: any) {
70 | errors.push(error);,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND invidious.fdn.fr
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'invidious.fdn.fr'
}
},
Error [TimeoutError]: The operation was aborted due to timeout
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
code: 23,
INDEX_SIZE_ERR: 1,
DOMSTRING_SIZE_ERR: 2,
HIERARCHY_REQUEST_ERR: 3,
WRONG_DOCUMENT_ERR: 4,
INVALID_CHARACTER_ERR: 5,
NO_DATA_ALLOWED_ERR: 6,
NO_MODIFICATION_ALLOWED_ERR: 7,
NOT_FOUND_ERR: 8,
NOT_SUPPORTED_ERR: 9,
INUSE_ATTRIBUTE_ERR: 10,
INVALID_STATE_ERR: 11,
SYNTAX_ERR: 12,
INVALID_MODIFICATION_ERR: 13,
NAMESPACE_ERR: 14,
INVALID_ACCESS_ERR: 15,
VALIDATION_ERR: 16,
TYPE_MISMATCH_ERR: 17,
SECURITY_ERR: 18,
NETWORK_ERR: 19,
ABORT_ERR: 20,
URL_MISMATCH_ERR: 21,
QUOTA_EXCEEDED_ERR: 22,
TIMEOUT_ERR: 23,
INVALID_NODE_TYPE_ERR: 24,
DATA_CLONE_ERR: 25
},
Error: HTTP 404
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();
]
GET /api/proxy/invidious?path=trending&region=VN 200 in 15.0s (compile: 7ms, render: 15.0s)
All Invidious instances failed: [
Error: HTTP 502
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON
at JSON.parse (<anonymous>)
at async GET (app/api/proxy/invidious/route.ts:67:20)
65 | }
66 |
> 67 | const data = await response.json();
| ^
68 | return NextResponse.json(data);
69 | } catch (error: any) {
70 | errors.push(error);,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
Error: HTTP 403
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();,
TypeError: fetch failed
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
[cause]: Error: getaddrinfo ENOTFOUND invidious.fdn.fr
at ignore-listed frames {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'invidious.fdn.fr'
}
},
Error [TimeoutError]: The operation was aborted due to timeout
at async GET (app/api/proxy/invidious/route.ts:56:24)
54 | for (const instance of INVIDIOUS_INSTANCES) {
55 | try {
> 56 | const response = await fetch(`${instance}${apiPath}`, {
| ^
57 | signal: AbortSignal.timeout(10000),
58 | headers: {
59 | 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36', {
code: 23,
INDEX_SIZE_ERR: 1,
DOMSTRING_SIZE_ERR: 2,
HIERARCHY_REQUEST_ERR: 3,
WRONG_DOCUMENT_ERR: 4,
INVALID_CHARACTER_ERR: 5,
NO_DATA_ALLOWED_ERR: 6,
NO_MODIFICATION_ALLOWED_ERR: 7,
NOT_FOUND_ERR: 8,
NOT_SUPPORTED_ERR: 9,
INUSE_ATTRIBUTE_ERR: 10,
INVALID_STATE_ERR: 11,
SYNTAX_ERR: 12,
INVALID_MODIFICATION_ERR: 13,
NAMESPACE_ERR: 14,
INVALID_ACCESS_ERR: 15,
VALIDATION_ERR: 16,
TYPE_MISMATCH_ERR: 17,
SECURITY_ERR: 18,
NETWORK_ERR: 19,
ABORT_ERR: 20,
URL_MISMATCH_ERR: 21,
QUOTA_EXCEEDED_ERR: 22,
TIMEOUT_ERR: 23,
INVALID_NODE_TYPE_ERR: 24,
DATA_CLONE_ERR: 25
},
Error: HTTP 404
at GET (app/api/proxy/invidious/route.ts:64:15)
62 |
63 | if (!response.ok) {
> 64 | throw new Error(`HTTP ${response.status}`);
| ^
65 | }
66 |
67 | const data = await response.json();
]
GET / 200 in 658ms (compile: 42ms, render: 616ms)
✓ Compiled in 197ms
GET / 200 in 854ms (compile: 466ms, render: 388ms)
GET / 200 in 317ms (compile: 19ms, render: 298ms)
GET / 200 in 338ms (compile: 8ms, render: 329ms)
GET / 200 in 310ms (compile: 4ms, render: 306ms)
GET / 200 in 327ms (compile: 10ms, render: 317ms)
GET / 200 in 314ms (compile: 4ms, render: 309ms)
GET / 200 in 345ms (compile: 15ms, render: 329ms)
GET / 200 in 336ms (compile: 7ms, render: 330ms)
GET / 200 in 402ms (compile: 5ms, render: 397ms)
GET / 200 in 442ms (compile: 7ms, render: 435ms)
GET / 200 in 506ms (compile: 12ms, render: 494ms)
GET / 200 in 567ms (compile: 11ms, render: 556ms)
GET / 200 in 567ms (compile: 20ms, render: 547ms)
GET / 200 in 515ms (compile: 8ms, render: 508ms)
GET / 200 in 441ms (compile: 8ms, render: 433ms)
GET / 200 in 388ms (compile: 12ms, render: 376ms)
GET / 200 in 285ms (compile: 39ms, render: 247ms)
GET / 200 in 214ms (compile: 4ms, render: 210ms)
GET / 200 in 154ms (compile: 7ms, render: 147ms)
GET / 200 in 124ms (compile: 7ms, render: 118ms)
GET / 200 in 76ms (compile: 6ms, render: 69ms)
GET / 200 in 687ms (compile: 18ms, render: 670ms)
GET / 200 in 467ms (compile: 22ms, render: 445ms)
Reload env: .env.local
GET / 200 in 395ms (compile: 290ms, render: 106ms)
✓ Compiled in 4ms
GET / 200 in 345ms (compile: 9ms, render: 336ms)
GET /feed/subscriptions 200 in 263ms (compile: 199ms, render: 64ms)
GET /feed/library 200 in 175ms (compile: 138ms, render: 37ms)
GET / 200 in 44ms (compile: 9ms, render: 35ms)
✓ Compiled in 94ms
GET / 200 in 501ms (compile: 104ms, render: 397ms)
GET / 200 in 121ms (compile: 35ms, render: 87ms)
GET /feed/subscriptions 200 in 111ms (compile: 95ms, render: 16ms)
GET /feed/library 200 in 32ms (compile: 7ms, render: 24ms)
✓ Compiled in 91ms
GET /feed/library 200 in 345ms (compile: 96ms, render: 249ms)
GET /feed/subscriptions 200 in 23ms (compile: 4ms, render: 19ms)
GET /feed/subscriptions 200 in 67ms (compile: 7ms, render: 60ms)
GET / 200 in 34ms (compile: 6ms, render: 28ms)
GET /feed/subscriptions 200 in 27ms (compile: 3ms, render: 24ms)
GET / 200 in 18ms (compile: 6ms, render: 12ms)
GET /feed/subscriptions 200 in 26ms (compile: 7ms, render: 19ms)
✓ Compiled in 56ms
✓ Compiled in 22ms
✓ Compiled in 19ms
✓ Compiled in 18ms
✓ Compiled in 24ms
✓ Compiled in 74ms
GET /feed/subscriptions 200 in 152ms (compile: 106ms, render: 46ms)
GET /feed/subscriptions 200 in 300ms (compile: 3ms, render: 296ms)
GET /feed/J 404 in 661ms (compile: 611ms, render: 50ms)
GET /feed/subscriptions 200 in 15ms (compile: 4ms, render: 12ms)
GET /feed/library 200 in 26ms (compile: 3ms, render: 23ms)
✓ Compiled in 14ms
✓ Compiled in 22ms
✓ Compiled in 81ms
✓ Compiled in 30ms
GET / 200 in 40ms (compile: 10ms, render: 30ms)
GET / 200 in 617ms (compile: 32ms, render: 586ms)
GET /feed/subscriptions 200 in 43ms (compile: 10ms, render: 32ms)
GET /feed/subscriptions 200 in 91ms (compile: 5ms, render: 86ms)
GET /feed/J 404 in 180ms (compile: 42ms, render: 137ms)
GET /feed/library 200 in 174ms (compile: 113ms, render: 61ms)
GET /feed/library 200 in 529ms (compile: 4ms, render: 526ms)
GET /feed/subscriptions 200 in 26ms (compile: 4ms, render: 21ms)
GET /feed/library 200 in 35ms (compile: 8ms, render: 27ms)
GET /feed/library 200 in 29ms (compile: 3ms, render: 25ms)
GET /watch?v=HX3UcwUYMjM 200 in 234ms (compile: 178ms, render: 56ms)
✓ Compiled in 48ms
GET /watch?v=CytWHfUVhXs 200 in 216ms (compile: 127ms, render: 89ms)
✓ Compiled in 71ms
✓ Compiled in 39ms
✓ Compiled in 38ms
✓ Compiled in 27ms
✓ Compiled in 56ms
✓ Compiled in 75ms
GET /watch?v=CytWHfUVhXs 200 in 313ms (compile: 240ms, render: 73ms)
GET /watch?v=CytWHfUVhXs 200 in 434ms (compile: 8ms, render: 426ms)
✓ Compiled in 34ms
GET / 200 in 198ms (compile: 21ms, render: 177ms)
GET / 200 in 76ms (compile: 16ms, render: 61ms)
✓ Compiled in 190ms
✓ Compiled in 46ms
✓ Compiled in 80ms
✓ Compiled in 46ms
✓ Compiled in 83ms
✓ Compiled in 48ms
✓ Compiled in 42ms
GET /?category=All 200 in 193ms (compile: 138ms, render: 54ms)
✓ Compiled in 88ms
GET /?category=All 200 in 73ms (compile: 20ms, render: 53ms)
✓ Compiled in 57ms
⚠ Fast Refresh had to perform a full reload due to a runtime error.
✓ Compiled in 78ms
GET /?category=All 200 in 1505ms (compile: 383ms, render: 1122ms)
✓ Compiled in 98ms
✓ Compiled in 65ms
✓ Compiled in 51ms
✓ Compiled in 48ms
GET /?category=All 200 in 434ms (compile: 122ms, render: 312ms)
GET /watch?v=XBPoRUlgD-0 200 in 152ms (compile: 119ms, render: 33ms)
GET /feed/subscriptions 200 in 223ms (compile: 178ms, render: 45ms)
GET /feed/J 404 in 287ms (compile: 125ms, render: 162ms)
GET /feed/library 200 in 122ms (compile: 95ms, render: 27ms)
GET /watch?v=cX-Oqdt7gmc 200 in 30ms (compile: 9ms, render: 21ms)
GET / 200 in 31ms (compile: 5ms, render: 26ms)
GET /search?q=Xreal 200 in 488ms (compile: 471ms, render: 17ms)
GET /search?q=Xreal 200 in 1132ms (compile: 945ms, render: 187ms)
GET /search?q=Xreal 200 in 426ms (compile: 12ms, render: 414ms)
✓ Compiled in 502ms
✓ Compiled in 259ms
✓ Compiled in 74ms
✓ Compiled in 93ms
GET /search?q=Xreal 200 in 508ms (compile: 119ms, render: 390ms)
GET / 200 in 19ms (compile: 6ms, render: 13ms)
✓ Compiled in 53ms
GET / 200 in 345ms (compile: 126ms, render: 219ms)
✓ Compiled in 66ms
⚠ Fast Refresh had to perform a full reload due to a runtime error.
✓ Compiled in 31ms
GET / 200 in 1721ms (compile: 312ms, render: 1409ms)
✓ Compiled in 28ms
✓ Compiled in 35ms
GET / 200 in 798ms (compile: 239ms, render: 558ms)
GET / 200 in 78ms (compile: 10ms, render: 68ms)
✓ Compiled in 45ms
GET / 200 in 396ms (compile: 119ms, render: 277ms)
✓ Compiled in 49ms
GET / 200 in 362ms (compile: 92ms, render: 271ms)
✓ Compiled in 55ms
✓ Compiled in 57ms
GET / 200 in 309ms (compile: 73ms, render: 236ms)
GET / 200 in 33ms (compile: 6ms, render: 27ms)
GET / 200 in 30ms (compile: 3ms, render: 27ms)
✓ Compiled in 36ms
✓ Compiled in 27ms
GET / 200 in 320ms (compile: 88ms, render: 232ms)
GET /watch?v=XBPoRUlgD-0 200 in 79ms (compile: 63ms, render: 16ms)
GET / 200 in 438ms (compile: 117ms, render: 320ms)