c# - 使用 NEST / Elasticsearch.Net 执行原始 JSON 请求
问题描述
使用纯 JSON 编写一些(高级)请求比使用 NEST 提供的语法更容易。接口中有一个CreatePostAsync
,IElasticLowLevelClient
但它专门使用Index
API。
我不想HttpClient
直接使用 a ,因为那样我就缺少最大重试次数等功能。
是否可以使用 NEST / Elasticsearch.Net 客户端向 Elasticsearch(等)发出任何请求?GET
POST
解决方案
如果您想提出任何请求,您可以DoRequest/DoRequestAsync
在低级客户端上使用
var lowLevelClient = new ElasticLowLevelClient();
var stringResponse = lowLevelClient.DoRequest<StringResponse>(
HttpMethod.POST,
"_search",
PostData.Serializable(new
{
query = new { match_all = new { } }
}));
也暴露在高级客户端 NEST.LowLevel
上
var client = new ElasticClient();
var stringResponse = client.LowLevel.DoRequest<StringResponse>(
HttpMethod.POST,
"_search",
PostData.Serializable(new
{
query = new { match_all = new { } }
}));
推荐阅读
- python - 在 Discord 中创建自定义图像欢迎横幅
- c++ - 不明参考
- c# - linux 上的 C#:FFmpeg (FFMediaToolkit) MediaOutput..Video.AddFrame(FrameToImageData(ImageData)) 导致程序以代码 139 退出
- javascript - 如何在 HTML 页面上显示本地存储保存的值
- visual-studio - 未解析的符号:__except_handler4_common
- php - 如何选择具有多个选择值的数据作为 where 子句?- Ajax Codeigniter
- python - Python:根据第三个数组对两个数组进行排序
- android - 格式错误的 URL 异常:空(Android 应用程序)
- wordpress - 我在 Wordpress 中找不到主页?
- python - 使用 Python 将 csv 文件转换为 dict