aboutsummaryrefslogtreecommitdiff
path: root/web/script/player/player.ts
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2023-12-14 15:12:22 +0100
committermetamuffin <metamuffin@disroot.org>2023-12-14 15:12:22 +0100
commit7920dad51f5f687dbda022c837b93f3741c75a03 (patch)
tree8ce4a7bb83a03b506c51b3780ad6e66bf489adab /web/script/player/player.ts
parent3249838ec4d112142bda51c825b7db909fd16ff3 (diff)
downloadjellything-7920dad51f5f687dbda022c837b93f3741c75a03.tar
jellything-7920dad51f5f687dbda022c837b93f3741c75a03.tar.bz2
jellything-7920dad51f5f687dbda022c837b93f3741c75a03.tar.zst
report errors when downloading jhls
Diffstat (limited to 'web/script/player/player.ts')
-rw-r--r--web/script/player/player.ts7
1 files changed, 5 insertions, 2 deletions
diff --git a/web/script/player/player.ts b/web/script/player/player.ts
index 9151a2a..c87ae8f 100644
--- a/web/script/player/player.ts
+++ b/web/script/player/player.ts
@@ -76,9 +76,12 @@ export class Player {
async fetch_meta() {
this.set_pers("Loading media manifest...")
- const res = await fetch(`/n/${encodeURIComponent(this.node_id)}/stream?format=jhls`)
+ const res = await fetch(`/n/${encodeURIComponent(this.node_id)}/stream?format=jhls`, { headers: { "Accept": "application/json" } })
if (!res.ok) return this.error.value = "Cannot download JHLS metadata"
- const metadata = await res.json() as JhlsMetadata
+ let metadata!: JhlsMetadata & { error: string }
+ try { metadata = await res.json() }
+ catch (_) { this.set_pers("Error: Failed to fetch stream info") }
+ if (metadata.error) return this.set_pers("server error: " + metadata.error)
this.set_pers()
this.tracks = metadata.tracks