summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/invidious/yt_backend/youtube_api.cr11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/invidious/yt_backend/youtube_api.cr b/src/invidious/yt_backend/youtube_api.cr
index 8ab2fe46..8904b589 100644
--- a/src/invidious/yt_backend/youtube_api.cr
+++ b/src/invidious/yt_backend/youtube_api.cr
@@ -404,10 +404,17 @@ module YoutubeAPI
url = "#{endpoint}?key=#{client_config.api_key}"
headers = HTTP::Headers{
- "Content-Type" => "application/json; charset=UTF-8",
- "Accept-Encoding" => "gzip",
+ "Content-Type" => "application/json; charset=UTF-8",
}
+ # The normal HTTP client automatically applies accept-encoding: gzip,
+ # and decompresses. However, explicitly applying it will remove this functionality.
+ #
+ # https://github.com/crystal-lang/crystal/issues/11252#issuecomment-929594741
+ {% unless flag?(:disable_quic) %}
+ headers["Accept-Encoding"] = "gzip"
+ {% end %}
+
# Logging
LOGGER.debug("YoutubeAPI: Using endpoint: \"#{endpoint}\"")
LOGGER.trace("YoutubeAPI: ClientConfig: #{client_config}")