20

Recherchez un document

searchindex

GET https://bezillion.com/api/v1/searchindex?login=&password=

loginVotre code d'identification.
passwordVotre mot de passe.
qrequête
fqfiltre de requête
pagesizenombre de résultats par page
pagenuméro de la page de résultats

q - requête, *:* par défaut.

fq - filtre de requête.

pagesize - nombre de résultats à retourner par page entre 10 et 100, 10 par défaut.

page - numéro de la page de résultats à retourner, 1 par défaut.

Vous pouvez tester cette fonction dans l'interface de votre espace personnel.

Recherche

 q

 fq

 2 • 

2022-11-28 02:00 45 en fox.txt

The quick brown fox
jumps over
the lazy dog.

2022-11-28 02:00 30,9k en fox.jpg

The quick brown fox
jumps over
the lazy dog.

The quick brown fox
jumps over
the lazy dog.

Indexez le fichier :

$ curl -s --fail --show-error -X POST "https://bezillion.com/api/v1/indexfile?login=abcdef&password=ABCDEF" -F "file=@fox.txt" -o -

Recherchez le terme fox :

$ curl -s --fail --show-error -X GET "https://bezillion.com/api/v1/searchindex?login=abcdef&password=ABCDEF&q=fox"
{"status":"success","data":{"count":1,"docs":[{"date":1669597200,"file":"fox.txt","size":45,"id":"12345678-9abc-def0-1234-56789abcdef0","lang":"en","from":"local","extra":"","stored":true,"score":0.45427877,"hl":["The quick brown fox\njumps over\nthe lazy dog.\n\n"]}]}}

sushi.png

Indexez le fichier :

$ curl -s --fail --show-error -X POST "https://bezillion.com/api/v1/indexfile?login=abcdef&password=ABCDEF" -F "lang=eng+jpn+spa" -F "psm=6" -F "file=@sushi.png" -o -

Recherchez le terme pollo :

$ curl -s --fail --show-error -X GET "https://local.bezillion.com/api/v1/searchindex?login=abcdef&password=ABCDEF&q=pollo"
{"status":"success","data":{"count":1,"docs":[{"date":1669597200,"file":"sushi.png","size":14394,"id":"12345678-9abc-def0-1234-56789abcdef0","lang":"en","from":"local","extra":"","stored":true,"score":0.5125473,"hl":["I eat \u3059\u3057 y Pollo\n\n"]}]}}

NOTE : Si une recherche ne retourne rien, le champ data vaut null 

{"status":"success","data":null}

Recherchez le terme polo :

$ curl -s --fail --show-error -X GET "https://local.bezillion.com/api/v1/searchindex?login=abcdef&password=ABCDEF&q=polo"
{"status":"fail","data":{"count":0,"suggest":["pollo"]}}

Recherchez le fichier sushi.*:

$ curl -s --fail --show-error -X GET "https://bezillion.com/api/v1/searchindex?login=abcdef&password=ABCDEF&fq=file:sushi.*"
{"status":"success","data":{"count":1,"docs":[{"date":1669597200,"file":"sushi.png","size":14394,"id":"12345678-9abc-def0-1234-56789abcdef0","lang":"en","from":"local","extra":"","stored":true,"score":1,"hl":false}]}}

Téléchargez le code de la fonction sendget de la librairie iZend. Copiez le fichier dans l'espace de votre application.

NOTE : Reportez-vous à la page Appelez l'API du service pour une description de la fonction sendget.

Ajoutez le fichier searchindex.php avec le contenu suivant :

  1. require_once 'sendhttp.php';

Charge le code de la fonction sendget.

  1. function searchindex($login, $password, $q=false, $fq=false, $pagesize=10, $page=1) {

Définit la fonction searchindex. $login est votre code d'identification. $password est votre mot de passe.

  1.     $curl = 'https://bezillion.com/api/v1/searchindex';

Met $curl à l'URL de l'action searchindex de l'API.

  1.     $args = array(
  2.         'login'     => $login,
  3.         'password'  => $password,
  4.         'q'         => $q,
  5.         'fq'        => $fq,
  6.         'pagesize'  => $pagesize,
  7.         'page'      => $page,
  8.     );

Prépare la liste des arguments du GET : le code d'identification et le mot de passe du compte de l'utilisateur, la requête, le filtre de la requête, le nombre de documents par réponse, le numéro de la page.

  1.     $response=sendget($curl, $args);

Envoie la requête HTTP avec sendget.

  1.     if (!$response or $response[0] != 200) {
  2.         return false;
  3.     }

Si $response vaut false, le serveur est inaccessible. Si $response[0] ne contient pas le code de retour HTTP 200 Ok, une erreur d'exécution s'est produite. En cas d'erreur, searchindex retourne false.

  1.     $r=json_decode($response[2], true);

Décode les données retournées en JSON.

  1.     return $r['data'];
  2. }

Retourne le résultat de la recherche si l'action a réussi.

EXEMPLE

En supposant que vous avez sauvé les fichiers sendhttp.php et searchindex.php dans le répertoire courant, lancez PHP en mode interactif, chargez la fonction searchindex et appelez-la avec en arguments votre code d'identification et votre mot de passe, un terme de recheche :

$ php -a
php > require_once 'searchindex.php';
php > $r=searchindex('abcdef', 'ABCDEF', 'pollo' );
php > $print_r($r);
Array
(
    [count] => 1
    [docs] => Array
        (
            [0] => Array
                (
                    [file] => sushi.png
                    [size] => 14394
                    [extra] => 
                    [id] => 12345678-9abc-def0-1234-56789abcdef0
                    [date] => 1669597200
                    [from] => local
                    [lang] => en
                    [score] => 0.8451465
                    [stored] => 1
                    [hl] => Array
                        (
                            [0] => I eat すし y Pollo
                        )
                )
        )
)
php > $r=searchindex('abcdef', 'ABCDEF', 'polo' );
php > $print_r($r);
Array
(
    [count] => 0
    [suggest] => Array
        (
            [0] => pollo
        )
)
php > $r=searchindex('abcdef', 'ABCDEF', false, 'file:sushi.*');
php > $print_r($r);
Array
(
    [count] => 1
    [docs] => Array
        (
            [0] => Array
                (
                    [file] => sushi.png
                    [size] => 14394
                    [extra] => 
                    [id] => 12345678-9abc-def0-1234-56789abcdef0
                    [date] => 1669597200
                    [from] => local
                    [lang] => en
                    [score] => 1
                    [stored] => 1
                    [hl] => 
                )
        )
)
php > $r=searchindex('abcdef', 'ABCDEF', 'pollo', false, 2);
php > $print_r($r);
php >
php > quit
VOIR AUSSI

Appelez l'API du service, Indexez un document, Reliez un document, Désindexez un document

Commentaires

Pour ajouter un commentaire, cliquez ici.