sonic channel
v1.1.0
Client Rust pour le backend de recherche Sonic.
Nous vous recommandons de commencer par la documentation.
Le MSRV est : 1.58.1
Ajoutez sonic-channel = { version = "1.1" }
comme dépendance dans Cargo.toml
.
Exemple Cargo.toml
:
[ package ]
name = " my-crate "
version = " 0.1.0 "
authors = [ " Me <[email protected]> " ]
[ dependencies ]
sonic-channel = { version = " 1.1 " , features = [ " ingest " ] }
Ajoutez default-features = false
à la dépendance, si vous souhaitez exclure le canal search
par défaut.
Remarque : Cet exemple nécessite l'activation de la fonction search
, activée par défaut.
use sonic_channel :: * ;
fn main ( ) -> result :: Result < ( ) > {
let channel = SearchChannel :: start (
"localhost:1491" ,
"SecretPassword" ,
) ? ;
let objects = channel . query ( QueryRequest :: new (
Dest :: col_buc ( "collection" , "bucket" ) ,
"recipe" ,
) ) ? ;
dbg ! ( objects ) ;
Ok ( ( ) )
}
Remarque : Cet exemple nécessite l'activation de la fonctionnalité ingest
.
use sonic_channel :: * ;
fn main ( ) -> result :: Result < ( ) > {
let channel = IngestChannel :: start (
"localhost:1491" ,
"SecretPassword" ,
) ? ;
let dest = Dest :: col_buc ( "collection" , "bucket" ) . obj ( "object:1" ) ;
let pushed = channel . push ( PushRequest :: new ( dest , "my best recipe" ) ) ? ;
// or
// let pushed = channel.push(
// PushRequest::new(dest, "Мой лучший рецепт").lang(Lang::Rus)
// )?;
dbg ! ( pushed ) ;
Ok ( ( ) )
}
Remarque : Cet exemple nécessite l'activation de la fonction control
.
use sonic_channel :: * ;
fn main ( ) -> result :: Result < ( ) > {
let channel = ControlChannel :: start (
"localhost:1491" ,
"SecretPassword" ,
) ? ;
let result = channel . consolidate ( ) ? ;
assert_eq ! ( result, ( ) ) ;
Ok ( ( ) )
}