Cookie heisst Cookie

„Keks", „Keksglas", „Kekse" — eingedeutscht, wo es nichts zu
verdeutschen gibt. Ein Cookie ist ein Cookie; wer danach sucht, sucht
nicht nach Keksen, und wer den Quelltext liest, liest daneben die
Schnittstelle, in der es `HTTPCookieStorage` heisst.

Betrifft Kommentare und Prüfungsnamen, kein Verhalten.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Scarriffle
2026-10-10 20:42:29 +02:00
co-authored by Claude Opus 5
parent f789c40594
commit 693a6cc867
6 changed files with 32 additions and 32 deletions
@@ -135,14 +135,14 @@ public final class AVPlayerEngine: VideoPlayerEngine {
//
// Serverneutral: wo kein Cookie liegt, ist die Liste leer und es
// ändert sich nichts.
let kekse = HTTPCookieStorage.shared.cookies(for: source.url) ?? []
let cookies = HTTPCookieStorage.shared.cookies(for: source.url) ?? []
let asset = AVURLAsset(url: source.url, options: [
// Keine genaue Dauer verlangen. Sonst durchsucht AVFoundation bei
// manchen Formaten die ganze Datei, bevor es überhaupt anfängt —
// und „ganze Datei" heißt bei einem Remux vierzig Gigabyte.
AVURLAssetPreferPreciseDurationAndTimingKey: false,
AVURLAssetHTTPCookiesKey: kekse,
AVURLAssetHTTPCookiesKey: cookies,
])
let item = AVPlayerItem(asset: asset)
@@ -83,10 +83,10 @@ public actor StreamCache {
// **Die Anmeldung muss mit.**
//
// Eine flüchtige Sitzung bringt ihren eigenen, leeren Keksspeicher
// Eine flüchtige Sitzung bringt ihren eigenen, leeren Cookie-Speicher
// mit — jede Anfrage von hier ging also unangemeldet hinaus. Bei
// Jellyfin fiel das nie auf: dort steht der Schlüssel in der Adresse.
// Flaro meldet über ein Keks an, und im Protokoll stand genau das:
// Flaro meldet über ein Cookie an, und im Protokoll stand genau das:
// `FlaroToken was challenged`, einmal je Wiedergabe, gefolgt von
// zwölf Sekunden Stille und einer zweiten Bestellung.
configuration.httpCookieStorage = HTTPCookieStorage.shared