Skip to content

Commit

Permalink
Preserve connection close header of get_storyboard
Browse files Browse the repository at this point in the history
  • Loading branch information
syeopite committed Jan 8, 2024
1 parent f23dd29 commit ddc5d3b
Showing 1 changed file with 11 additions and 2 deletions.
13 changes: 11 additions & 2 deletions src/invidious/routes/images.cr
Expand Up @@ -41,9 +41,14 @@ module Invidious::Routes::Images
end
end

# A callable proc to be used inside #proxy_image
callable_proc = ->(env : HTTP::Server::Context) {
env.response.headers["Connection"] = "close"
}

begin
get_ytimg_pool(authority).client &.get(url, headers) do |resp|
return self.proxy_image(env, resp)
return self.proxy_image(env, resp, callable_proc: callable_proc)
end
rescue ex
end
Expand Down Expand Up @@ -133,7 +138,7 @@ module Invidious::Routes::Images
end
end

private def self.proxy_image(env, response)
private def self.proxy_image(env, response, callable_proc = nil)
env.response.status_code = response.status_code
response.headers.each do |key, value|
if !RESPONSE_HEADERS_BLACKLIST.includes?(key.downcase)
Expand All @@ -143,6 +148,10 @@ module Invidious::Routes::Images

env.response.headers["Access-Control-Allow-Origin"] = "*"

if callable_proc
callable_proc.call(env)
end

if response.status_code >= 300
return env.response.headers.delete("Transfer-Encoding")
end
Expand Down

0 comments on commit ddc5d3b

Please sign in to comment.