Ricerca vuota non restituisce messaggio descrittivo

Il Front-End non consente ricerche vuote e mostra un messaggio utile che spiega che il termine di ricerca è troppo breve.

Tuttavia, l’endpoint API consente ancora ricerche vuote, ma la risposta è un oggetto JSON con un valore NULL e uno stato 200.

Non dovrebbe l’API rispondere con un messaggio di errore descrittivo e uno stato 400?

Atteso:

// Errore 400
{
  "errors": [ "Hai fornito parametri non validi alla richiesta: q" ],
  "error_type": "invalid_parameters"
}

Reale:

// 200 ok
{
  "grouped_search_result": null
}

L’API potrebbe certamente essere migliorata in questo punto, ma la rotta di query consente molti argomenti:

Dovremmo prestare molta attenzione qui per verificare se trattiamo min_search_term_length come un requisito obbligatorio o come un’opzione facoltativa.

Grazie @sam

Allo stato attuale:

  • La ricerca vuota è un punto morto nell’API
  • L’endpoint di ricerca accetta un termine di ricerca ma anche argomenti di metadati (utente, categorie, tag, ecc.)
  • Gli argomenti di metadati non sono documentati nell’API
  • Il front-end convalida correttamente la ricerca, ma l’API back-end la convalida solo parzialmente (consentendo il passaggio di una ricerca vuota)
  • Il messaggio di risposta dovrebbe essere descrittivo in ogni caso

Spero che questa panoramica sia utile.
Secondo me si tratta di un bug. Sarei sorpreso se questo fosse il comportamento previsto.
Grazie comunque :v: