diff options
| author | Samantaz Fox <coding@samantaz.fr> | 2022-03-06 01:12:57 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-03-06 01:12:57 +0100 |
| commit | f7b557eed1c8e55002608ee9117cf9523b24bafd (patch) | |
| tree | 7fde418b3685cc024cca708a3f0bf0cb1c06ce9e /src | |
| parent | bdfe317e20c9cc5d9e972e51d995faf59b86197d (diff) | |
| download | invidious-f7b557eed1c8e55002608ee9117cf9523b24bafd.tar.gz invidious-f7b557eed1c8e55002608ee9117cf9523b24bafd.tar.bz2 invidious-f7b557eed1c8e55002608ee9117cf9523b24bafd.zip | |
API: fix suggestions not workin
Closes #2914
Thanks to @TiA4f8R for the help
Diffstat (limited to 'src')
| -rw-r--r-- | src/invidious/routes/api/v1/search.cr | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/invidious/routes/api/v1/search.cr b/src/invidious/routes/api/v1/search.cr index 0b0853b1..5666460d 100644 --- a/src/invidious/routes/api/v1/search.cr +++ b/src/invidious/routes/api/v1/search.cr @@ -43,20 +43,20 @@ module Invidious::Routes::API::V1::Search end def self.search_suggestions(env) - locale = env.get("preferences").as(Preferences).locale - region = env.params.query["region"]? + preferences = env.get("preferences").as(Preferences) + region = env.params.query["region"]? || preferences.region env.response.content_type = "application/json" - query = env.params.query["q"]? - query ||= "" + query = env.params.query["q"]? || "" begin - headers = HTTP::Headers{":authority" => "suggestqueries.google.com"} - response = YT_POOL.client &.get("/complete/search?hl=en&gl=#{region}&client=youtube&ds=yt&q=#{URI.encode_www_form(query)}&callback=suggestCallback", headers).body + client = HTTP::Client.new("suggestqueries-clients6.youtube.com") + url = "/complete/search?client=youtube&hl=en&gl=#{region}&q=#{URI.encode_www_form(query)}&xssi=t&gs_ri=youtube&ds=yt" + + response = client.get(url).body - body = response[35..-2] - body = JSON.parse(body).as_a + body = JSON.parse(response[5..-1]).as_a suggestions = body[1].as_a[0..-2] JSON.build do |json| |
