Change unauthenticated search to not support pagination in REST API (#19326)
- Only exact search matches for queries with < 5 characters - Do not support queries with `offset` (pagination) - Return HTTP 401 on truthy `resolve` instead of overriding to false
This commit is contained in:
parent
8f07381856
commit
1ae508bf2f
3 changed files with 71 additions and 9 deletions
|
@ -3,6 +3,9 @@
|
|||
class AccountSearchService < BaseService
|
||||
attr_reader :query, :limit, :offset, :options, :account
|
||||
|
||||
# Min. number of characters to look for non-exact matches
|
||||
MIN_QUERY_LENGTH = 5
|
||||
|
||||
def call(query, account = nil, options = {})
|
||||
@acct_hint = query&.start_with?('@')
|
||||
@query = query&.strip&.gsub(/\A@/, '')
|
||||
|
@ -135,6 +138,8 @@ class AccountSearchService < BaseService
|
|||
end
|
||||
|
||||
def limit_for_non_exact_results
|
||||
return 0 if @account.nil? && query.size < MIN_QUERY_LENGTH
|
||||
|
||||
if exact_match?
|
||||
limit - 1
|
||||
else
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue