API de suggestions

Obtention de la liste des mots suggérés

Requête

Méthode HTTP GET
Point de terminaison /api/v2/suggest-words

En envoyant une requête à Fess de type http://<Server Name>/api/v2/suggest-words?q=fes, vous pouvez recevoir au format JSON la liste des mots suggérés pour le préfixe saisi. Pour utiliser l’API de suggestions, vous devez activer « Suggérer à partir des documents » ou « Suggérer à partir des mots de recherche » dans les paramètres généraux du système dans l’interface d’administration.

Pour l’enveloppe de réponse commune et le modèle d’erreur, voir Vue d’ensemble de l’API.

Paramètres de requête

Les paramètres de requête disponibles sont les suivants.

Paramètres de requête
q Terme de recherche (préfixe) pour la suggestion. (Ex.) q=fes
num Nombre de mots suggérés (entier >= 0). Valeur par défaut 10. (Ex.) num=20
fn Nom de champ pour affiner les cibles de suggestion. Peut être répété pour être traité comme un tableau. (Ex.) fn=content&fn=title
lang Langue de recherche. Peut être répété pour être traité comme un tableau. (Ex.) lang=en
label Nom d’étiquette à filtrer. Peut être répété pour être traité comme un tableau. (Ex.) label=java

Note

En v2, le paramètre de nom de champ est fn (et non fields comme en v1). De même, le paramètre d’étiquette est label (différent du paramètre labels de v1).

Réponse

En cas de succès, une réponse au format d’enveloppe commune est retournée.

{
  "response": {
    "status": 0,
    "q": "fes",
    "page_size": 10,
    "record_count": 355,
    "query_time": 18,
    "suggest_words": [
      {
        "text": "fess",
        "types": [
          "document",
          "query"
        ]
      }
    ]
  }
}

Les détails de chaque élément de response sont les suivants.

Informations de réponse
q Terme de recherche demandé (chaîne de caractères).
page_size Taille de la page (entier).
record_count Nombre de mots suggérés correspondants (entier 64 bits).
query_time Temps de traitement de la requête. Unité : millisecondes (entier 64 bits).
suggest_words Tableau des mots suggérés. Chaque élément possède text et types.
text Mot suggéré (chaîne de caractères).
types Tableau des types du mot suggéré (tableau de chaînes de caractères).

Note

En v2, les champs d’un élément de suggestion sont text et types (et non labels comme en v1).

Exemple d’utilisation

Exemple de requête avec la commande curl :

curl "http://localhost:8080/api/v2/suggest-words?q=fes"

Réponse d’erreur

En cas d’échec de l’API de suggestions, l’enveloppe d’erreur commune est retournée. Pour le détail du modèle d’erreur, voir Vue d’ensemble de l’API.

Réponses d’erreur
Code de statut Description
405 Method Not Allowed Une méthode HTTP non prise en charge a été spécifiée.
500 Internal Server Error Une erreur interne s’est produite sur le serveur.