iqdb: proxy iqdb searches through danbooru.

Previously the search form on the /iqdb_queries page submitted directly
to the iqdb service (karasuma.donmai.us), which redirected back to
Danbooru with the search results.

This was different than API requests, which submitted to
/iqdb_queries.json which proxied the call to iqdb through Danbooru.
Because of this, searches on the /iqdb_queries page had different
behavior than API requests. Things like filesize limits and referrer
spoofing were handled differently.

Now searches on the /iqdb_queries page submit directly to Danbooru. This
is simpler and it means that API requests and HTML requests have the
same behavior.
This commit is contained in:
evazion
2019-10-14 21:16:04 -05:00
parent f7116ad1c4
commit ae521e600e
5 changed files with 43 additions and 34 deletions

View File

@@ -153,7 +153,7 @@ Rails.application.routes.draw do
resource :visit, :controller => "forum_topic_visits"
end
resources :ip_bans
resource :iqdb_queries, :only => [:show] do
resource :iqdb_queries, :only => [:show, :create] do
collection do
get :preview
get :check, to: redirect {|path_params, req| "/iqdb_queries?#{req.query_string}"}