J'essaie de créer le proxy le plus simple possible dans une API pour exécuter des recherches sur les nœuds ElasticSearch. La seule raison pour que le proxy soit là est de "cacher" les informations d'identification et les ES abstraits du point de terminaison de l'API.ElasticSearch NEST Exécution d'une requête brute DSL
Avec Nest.ElasticClient, existe-t-il un moyen d'exécuter une requête de chaîne brute? exemple de requête qui est valable dans ES vanille:
{
"query": {
"fuzzy": { "title": "potato" }
}
}
Dans mon API, j'ai essayé désérialisation la chaîne brute en SearchRequest, mais il échoue. Je suppose qu'il ne peut pas désérialiser le terrain:
var req = m_ElasticClient.Serializer.Deserialize<SearchRequest>(p_RequestBody);
var res = m_ElasticClient.Search<T>(req);
return m_ElasticClient.Serializer.SerializeToString(res);
System.InvalidCastException: Invalid cast from 'System.String' to 'Newtonsoft.Json.Linq.JObject'.
est-il un moyen de transmettre la requête simplement de chaîne brute pour ES et retourner la réponse de la chaîne? J'ai essayé d'utiliser la méthode LowLevel.Search sans chance.
Bien! Bon à savoir ElasticSearch prend également en charge ce format. – MicG